In computer programming, the scheduler pattern is a software design pattern. It is a concurrency pattern used to explicitly control when threads may execute single-threaded code, like write operation to a file.
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 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.
The scheduler pattern is not quite the same as the scheduled-task pattern used for real-time systems.
Famous quotes containing the word pattern:
“It was her stern necessity: all things
Are of one pattern made; bird, beast, and flower,
Deceive us, seeming to be many things,
And are but one. Beheld far off, they differ
As God and devil; bring them to the mind,
They dull its edge with their monotony.”
—Ralph Waldo Emerson (18031882)