- A lock (mutex) which allows multiple threads to coordinate access to a shared resource.
- A queue which can be shared between multiple
Threads, allowing any of them to submit messages to or pull messages out of it.
- A condition variable which helps multiple
Threads coordinate their scheduling.
- An object which holds onto a
Lockas long as the
ScopedLockitself continues to exist.
- Represents a thread of execution within a program.