Threads Module User's Guide : PART II Concurrency Packages : Chapter 4 The Synchronization Package : Definitions
Definitions
The following definitions and concepts are important to understanding the features of the Synchronization package.
Synchronization—The use of mechanisms or processes whereby undesirable interleaving of operations or interference between concurrent threads is prevented. Synchronization is generally accomplished using one of two techniques: mutual exclusion or condition synchronization.
Mutual exclusion—Combining fine-grained atomic actions into coarse-grained actions and arranging to make these composite actions atomic.
Condition synchronization—A process or mechanism that delays the execution of a thread until the program state satisfies some predicate or condition.
Blocked threads—A thread that is no longer executing because it is delayed or waiting on some synchronization mechanism.
Unblocked threads—Once a thread is unblocked, awakened, or signaled, it becomes runnable and eligible for further execution. Not all synchronization mechanisms use blocking to delay a thread. Some mechanisms are implemented using polling loops or spin-locks.