Transactions are used to wrap a block of asynchronous operations to make them synchronous as well as atomic. The cost is in performance, both in terms of the server providing atomicity and added round-trip time in communicating with the server.
This method sets the channel to use standard transactions.
The client must use this method at least once on a channel before using the Commit or Rollback methods.
This method commits all message publications and acknowledgments performed in the current transaction.
A new transaction starts immediately after a commit.
This method abandons all message publications and acknowledgments performed in the current transaction.
A new transaction starts immediately after a rollback. Note that unacked messages will not be automatically redelivered by rollback; if that is required an explicit recover call should be issued.