Synchronization
Events, semaphores, critical sections and task groups that suspend tasks instead of threads.
| Name | Description |
|---|---|
Functions and constants
functions |
Free functions and constants of Synchronization. |
AutoResetEvent
class |
An auto-reset event for tasks. |
CriticalSection
class |
A recursive mutual-exclusion lock owned by a task (not by a thread). |
CriticalSectionLock
class |
Scope guard that holds a critical section. |
ManualResetEvent
class |
A manual-reset event for tasks. |
Semaphore
class |
A counting semaphore for tasks. |
SemaphoreLock
class |
Scope guard that holds one permit of a semaphore. |
SpinCriticalSectionLock
class |
Scope guard that holds a critical section, spinning before it suspends. |
SpinSemaphoreLock
class |
Scope guard that holds one permit of a semaphore, spinning before it suspends. |
Suspendable
class |
Records a suspending task as waiting and then re-checks the primitive's condition. |
SuspendableBase
class |
Keeps the tasks suspended on one synchronization object and resumes them. |
SuspensionKind
enum |
How many tasks may be suspended on one synchronization object at the same time. |
TaskGroup
class |
Waits for a group of tasks (fork/join). |
Waitable
class |
Turns a non-blocking TryWait() into a suspending Wait(). |