Active object pattern
The active object type of concurrency design pattern differentiates/distinguishes the method execution from the method invocation. The job of this pattern is the enhancement of concurrency along with simplification in the synchronized access to objects that reside in separate and distinguishable threads of control. It is used for dealing with the multiple client requests that arrive all at once, and also for improving the quality of the service. Let's see the following diagrams, which illustrates the active object design pattern in the concurrency and multithread-based application:
As you can see in the preceding diagram, the following components of this concurrency design pattern:
- Proxy: This is the active object that is visible to the client. The proxy advertises its interface.
- Servant: There is a method that is defined in the interface of the proxy. The servant is the provider of its implementation.
- Activation list: This is a serialized list that contains method request...