Active Object an Object Behavioral Pattern for Concurrent Programming
نویسندگان
چکیده
This paper describes the Active Object pattern, which decouples method execution from method invocation in order to simplify synchronized access to a shared resource by methods invoked in different threads of control. The Active Object pattern allows one or more independent threads of execution to interleave their access to data modeled as a single object. A broad class of producer/consumer and reader/writer problems are well-suited to this model of concurrency. This pattern is commonly used in distributed systems requiring multi-threaded servers. In addition, client applications (such as windowing systems and network browsers), are increasingly employing active objects to simplify concurrent, asynchronous network operations.
منابع مشابه
Concurrent Object-Oriented Development with Behavioral Design Patterns
The development of concurrent applications is challenging because of the complexity of concurrent designs and the hazards of concurrent programming. Architectural modeling using the Unified Modeling Language (UML) can support the development process, but the problem of mapping the model to a concurrent implementation remains. This paper addresses this problem by defining a scheme to map concurr...
متن کاملMonitor Object An Object Behavioral Pattern for Concurrent Programming
handler and consumer handler objects that run in separate threads and route messages from one or more remote suppliers to one or more remote consumers, respectively. When a supplier handler thread receives a message from a remote supplier, it uses an address field in the message to determine the corresponding consumer handler, whose thread then delivers the message to its remote consumer. When ...
متن کاملDeclarative Semantics in Object-Oriented Software Development - A Taxonomy and Survey
One of the modern paradigms to develop an application is object oriented analysis and design. In this paradigm, there are several objects and each object plays some specific roles in applications. In an application, we must distinguish between procedural semantics and declarative semantics for their implementation in a specific programming language. For the procedural semantics, we can write a ...
متن کاملUsing Design Patterns and Frameworks to Develop Object-Oriented Communication Systems
Factory 19 Tactical Patterns Proxy { \Provide a surrogate or placeholder for another object to control access to it" Strategy { \De ne a family of algorithms, encapsulate each one, and make them interchangeable" Adapter { \Convert the interface of a class into another interface client expects" Singleton { \Ensure a class only has one instance and provide a global point of access to it" State { ...
متن کاملObject-Oriented Programming and Protected Objects in Ada 95
Integrating concurrent and object-oriented programming has been an active research topic since the late 1980s. The majority of approaches have taken a sequential object-oriented language and made it concurrent. A few approaches have taken a concurrent language and made it object-oriented. The most important of this latter class is the Ada 95 language which is an extension to the object-based co...
متن کامل