Quire

Proactor pattern

From Quire, the open reference·Software design pattern for event handling·1 min read

Proactor is a software design pattern for event handling in which long running activities are running in an asynchronous part.[1] A completion handler is called after the asynchronous part has terminated. The proactor pattern can be considered to be an asynchronous variant of the synchronous reactor pattern.[2]

Interaction#edit

UML Sequence diagram of Proactor
UML Sequence diagram of Proactor Image: source and license

Operation specific actors:

  • The Proactive Initiator starts the asynchronous operation via the Asynchronous Operation Processor and defines the Completion Handler
  • Completion Handler is a call at the end of the operation from the Asynchronous Operation Processor
  • Asynchronous Operation

Standardized actors

  • The Asynchronous Operation Processor controls the whole asynchronous operation
  • The Completion Dispatcher handles the call, depending on the execution environment.

Implementations#edit

See also#edit

  • Reactor pattern (a pattern that also asynchronously queues events, but demultiplexes and dispatches them synchronously)

References#edit

  1. ^ Pyarali, Irfan; Harrison, Tim (September 1997). Proactor: An Object Behavioral Pattern for Demultiplexing and Dispatching Handlers for Asynchronous Events (PDF). 4th Annual Pattern Languages of Programming Conference. Allerton Park, Illinois.
  2. ^ Pattern-Oriented Software Architecture, Volume 2, Schmidt et al., Jon Wiley & Sons, Ltd, 2000

This article is mirrored from “Proactor pattern” on English Wikipedia, revision 1375194890, written by Wikipedia's contributors and licensed CC BY-SA 4.0. Editing it here creates a Quire copy with its own history.

Synced with Wikipedia revision 1375194890 · just now