Jump to content

Active object: Difference between revisions

From Wikipedia, the free encyclopedia
Content deleted Content added
No edit summary
Weeble (talk | contribs)
Introductory sentence made no sense due to missing words
Line 1: Line 1:
{{About|a multi-threading technique|the [[lockstep protocol]] variant|Active objects}}
{{About|a multi-threading technique|the [[lockstep protocol]] variant|Active objects}}


The '''active object''' [[design pattern]] decouples method execution from method invocation that reside in their own [[thread (computing)|thread]] of control.<ref>{{cite book
The '''active object''' [[design pattern]] decouples method execution from method invocation for objects that each reside in their own [[thread (computing)|thread]] of control.<ref>{{cite book
| author = [[Douglas C. Schmidt]]
| author = [[Douglas C. Schmidt]]
| coauthors = Michael Stal, Hans Rohnert, and Frank Buschmann
| coauthors = Michael Stal, Hans Rohnert, and Frank Buschmann

Revision as of 15:33, 19 September 2012

The active object design pattern decouples method execution from method invocation for objects that each reside in their own thread of control.[1] The goal is to introduce concurrency, by using asynchronous method invocation and a scheduler for handling requests.[2]

The pattern consists of six elements:[3]

  • A proxy, which provides an interface towards clients with publicly accessible methods.
  • An interface which defines the method request on an active object.
  • A list of pending requests from clients.
  • A scheduler, which decides which request to execute next.
  • The implementation of the active object method.
  • A callback or variable for the client to receive the result.

See also

References

  1. ^ Douglas C. Schmidt (2000). Pattern-Oriented Software Architecture, Volume 2: Patterns for Concurrent and Networked Objects. John Wiley & Sons. ISBN 0-471-60695-2. {{cite book}}: Unknown parameter |coauthors= ignored (|author= suggested) (help)
  2. ^ Bass, L., Clements, P., Kazman, R. Software Architecture in Practice. Addison Wesley, 2003
  3. ^ Lavender, R. Greg. "Active Object" (PDF). Retrieved 2007-02-02. {{cite web}}: Unknown parameter |coauthors= ignored (|author= suggested) (help)


Template:Link GA