- call-with-transaction PROCprocedure
- call-with-transaction/values PROCprocedure
Call PROC with one argument, a fresh (lightweight) transaction. PROC may be called multiple times in case of a conflict. (See hopefully-current for the difference to heavy transactions).
Returns whatever PROC returns. Use call-with-transaction for multiple value returns call-with-transaction/values returns all values.
Note: One should not pass the transaction argument around among threads or capture it. Most (if not all) resulting conditions should be handled. But it is no good idea.