Scheduler Pattern

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 is a very true and expressive phrase, “He looked daggers at me,” for the first pattern and prototype of all daggers must have been a glance of the eye.... It is wonderful how we get about the streets without being wounded by these delicate and glancing weapons, a man can so nimbly whip out his rapier, or without being noticed carry it unsheathed. Yet it is rare that one gets seriously looked at.
    Henry David Thoreau (1817–1862)