Combining tasking and transactions, part II: open multithreaded transactions

  • Authors:
  • Jörg Kienzle;Alexander Romanovsky

  • Affiliations:
  • Software Engineering Laboratory, Swiss Federal Institute of Technology, CH - 1015 Lausanne Ecublens, Switzerland;Department of Computing Science, University of Newcastle, NE1 7RU, Newcastle upon Tyne, United Kingdom

  • Venue:
  • IRTAW '00 Proceedings of the 10th international workshop on Real-time Ada workshop
  • Year:
  • 2001

Quantified Score

Hi-index 0.00

Visualization

Abstract

This position paper is a follow-up paper of [1], presented at the last IRTAW workshop. The paper describes a model for providing transaction support for concurrent programming languages such as Ada 95. In order to achieve smooth integration, the use of the concurrency features provided by the Ada language should not be restricted inside a transaction. A transaction model that meets this requirement is presented. Tasks inside such a transaction may spawn new tasks, but also external tasks are allowed to join an ongoing transaction. A blocking commit protocol ensures that no task leaves the transaction before its outcome has been determined. Exceptions are used to inform all participants in case a transaction aborts. Possible interfaces for the Ada programmer are discussed.