Report a bug
If you spot a problem with this page, click here to create a Bugzilla issue.
Improve this page
Quickly fork, edit online, and submit a pull request for this page.
Requires a signed-in GitHub account. This works well for small changes.
If you'd like to make larger changes you may want to consider using
a local clone.
core.sync.condition
The
condition module provides a primitive for synchronized condition
checking.
License:
Authors:
Sean Kelly
Source: core/sync/condition.d
- class
Condition; - This class represents a condition variable as conceived by C.A.R. Hoare. As per Mesa type monitors however, "signal" has been replaced with "notify" to indicate that control is not transferred to the waiter when a notification is sent.
- nothrow @safe this(Mutex
m); - Initializes a condition object which is associated with the supplied mutex object.Parameters:
Mutex mThe mutex with which this condition will be associated. Throws:SyncError on error. - @property Mutex
mutex(); - Gets the
mutexassociated with this condition.Returns:Themutexassociated with this condition. - void
wait(); - Wait until notified.Throws:SyncError on error.
- bool
wait(Durationval); - Suspends the calling thread until a notification occurs or until the supplied time period has elapsed.Parameters:
Duration valThe time to wait.In:
valmust be non-negative.Throws:SyncError on error.Returns:trueif notified before the timeout andfalseif not. - void
notify(); - Notifies one waiter.Throws:SyncError on error.
- void
notifyAll(); - Notifies all waiters.Throws:SyncError on error.
Copyright Sean Kelly 2005 - 2009.
| Page generated by
Ddoc on (no date time)