Design and validation of computer protocols
Design and validation of computer protocols
Object-oriented modeling and design
Object-oriented modeling and design
The concurrency workbench: a semantics-based tool for the verification of concurrent systems
ACM Transactions on Programming Languages and Systems (TOPLAS)
Toward a method of object-oriented concurrent programming
Communications of the ACM
Research directions in concurrent object-oriented programming
Research directions in concurrent object-oriented programming
Monitors: an operating system structuring concept
Communications of the ACM
Communication and Concurrency
Hierarchical ordering of sequential processes
The origin of concurrent programming
Active Objects for Coordination in Distributed Testing
OOIS '02 Proceedings of the 8th International Conference on Object-Oriented. Information Systems
Hi-index | 4.10 |
Using the Dining Philosophers problem, the author shows how Synchronous C++ can improve the development of concurrent applications. sC++ introduces the concept of an active object. The syntax of the definition, instantiation, reference, call, inheritance, and deletion of an active object is identical to the syntax of the same operations on a standard or passive object. An active object, however, contains an internal activity that runs in parallel with the activities of the other active objects. This activity can delay the executions of its methods-when called from outside-until it is ready to accept them. sC++ has strong connections to the domains of concurrency, behavior analysis, and OO programming. Namely, sC++ contains a real-time kernel, lends itself to analysis by modern modeling and analysis theories, and uses the same syntax for active objects as for passive ones. This article focuses on examples in which the dynamic and functional models dominate and the object model is secondary. In doing so, the author proposes a mapping between the elements of all three models and sC++ statements.