Scheduler pattern: Difference between revisions

Content deleted Content added
DanMS (talk | contribs)
m See also: fixed link
redirecting to Scheduling (computing), which covers the same topic; the only source I can find for scheduling as a design pattern is the self-published http://www.c2.com/cgi/wiki?SchedulerPattern, which treats everything as a pattern
 
(11 intermediate revisions by 10 users not shown)
Line 1:
#REDIRECT [[Scheduling (computing)]]
In [[computer programming]], the '''scheduler pattern''' is a [[software design pattern]]. It is a [[Concurrency (computer science)|concurrency]] pattern used to explicitly control when [[thread (software engineering)|thread]]s may [[execution (computers)|execute]] single-threaded [[source code|code]].
 
The scheduler pattern uses an object that explicitly sequences waiting threads. It provides a mechanism to implement a [[scheduling policy]], but is independent of any specific scheduling policy — the policy is encapsulated in its own class and is reusable.
 
The [[Read write lock pattern|read/write lock pattern]] is usually implemented using the scheduler pattern to ensure fairness in scheduling.
 
Note that the scheduler pattern adds significant overhead beyond that required to call a synchronized [[method (computer science)|method]].
 
The scheduler pattern is not quite the same as the [[scheduled-task pattern]].
 
==See also==
[[Lock pattern]], [[Mediator pattern]], [[Interruptible command]], [[Reactor Pattern]]
 
[[Category:Software design patterns]]