Exception Handling in Open Multithreaded Transactions
This paper describes a model for providing transaction support for object-oriented concurrent programming languages. In order to achieve seamless integration, the use of the concurrency features provided by the programming language should not be restricted inside a transaction. A transaction model that meets this requirement is presented. Threads inside such a transaction may spawn new threads, but also external threads are allowed to join an ongoing transaction. A blocking commit protocol ensures that no thread leaves the transaction before its outcome has been determined. Exceptions are used to inform all participants in case a transaction aborts.
kienzle-ECOOP2000-exception-open.pdf
openaccess
49.61 KB
Adobe PDF
e3c6707a423bcd76953c919167a56298