|
|
| conditionBase ()=default |
| | Default constructor.
|
| |
| virtual void | wait (mutexBase &mutex)=0 |
| | Waits for notification while holding the mutex.
|
| |
| virtual bool | waitFor (mutexBase &mutex, time::duration d)=0 |
| | Waits for notification with timeout.
|
| |
| template<typename Pred > |
| void | wait (mutexBase &mutex, Pred predicate) noexcept(noexcept(predicate())) |
| | Waits until predicate becomes true.
|
| |
| template<typename Pred > |
| bool | waitFor (mutexBase &mutex, const time::duration &d, Pred predicate) noexcept(noexcept(predicate())) |
| | Waits with timeout until predicate becomes true.
|
| |
| virtual void | notify ()=0 |
| | Notifies one waiting thread.
|
| |
| virtual void | notifyAll ()=0 |
| | Notifies all waiting threads.
|
| |
|
virtual | ~conditionBase ()=default |
| | Virtual destructor.
|
| |
|
| conditionBase (const conditionBase &)=delete |
| | Deleted copy constructor.
|
| |
|
conditionBase & | operator= (const conditionBase &)=delete |
| | Deleted copy assignment operator.
|
| |
Abstract base class for condition variable implementations.
Provides the interface for thread synchronization operations:
- Waiting with mutex protection
- Timed waiting with duration support
- Notification of waiting threads
- Predicate-based waiting templates
- Note
- This is an abstract base class and cannot be instantiated directly. Derived classes must implement all pure virtual methods.