About Synchronization
To synchronize access to a resource, use one of the synchronization objects in one of the wait functions. The state of a synchronization object is either signaled or nonsignaled. The wait functions allow a thread to block its own execution until a specified nonsignaled object is set to the signaled state. For more information, see Interprocess Synchronization.
The following are other synchronization mechanisms:
- overlapped input and output
- asynchronous procedure calls
- critical section objects
- condition variables
- slim reader/writer locks
- one-time initialization
- interlocked variable access
- interlocked singly linked lists
- timer queues
- the MemoryBarrier macro
For additional information on synchronization, see Synchronization and Multiprocessor Issues.