Jump to content

Active object

From Wikipedia, the free encyclopedia
This is an old revision of this page, as edited by Addbot (talk | contribs) at 15:56, 19 February 2013 (Bot: Updating 3 interwikilinks per Wikidata d:q2341242 (Report Errors)). The present address (URL) is a permanent link to this revision, which may differ significantly from the current revision.

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