Nito.AsyncEx.AsyncMonitor
An async-compatible monitor.
Gets a semi-unique identifier for this monitor.
public AsyncMonitor(IAsyncWaitQueue<IDisposable> lockQueue, IAsyncWaitQueue<object> conditionVariableQueue)
Constructs a new monitor.
public AsyncMonitor()
Constructs a new monitor.
Synchronously enters the monitor. Returns a disposable that leaves the monitor when disposed. This method may block the calling thread.
Asynchronously enters the monitor. Returns a disposable that leaves the monitor when disposed. This method may block the calling thread.
Asynchronously enters the monitor. Returns a disposable that leaves the monitor when disposed.
Asynchronously enters the monitor. Returns a disposable that leaves the monitor when disposed.
Sends a signal to a single task waiting on this monitor. The monitor MUST already be entered when calling this method, and it will still be entered when this method returns.
Sends a signal to all tasks waiting on this monitor. The monitor MUST already be entered when calling this method, and it will still be entered when this method returns.
Asynchronously waits for a pulse signal on this monitor. This method may block the calling thread. The monitor MUST already be entered when calling this method, and it will still be entered when this method returns, even if the method is cancelled. This method internally will leave the monitor while waiting for a notification.
Asynchronously waits for a pulse signal on this monitor. This method may block the calling thread. The monitor MUST already be entered when calling this method, and it will still be entered when this method returns. This method internally will leave the monitor while waiting for a notification.
Asynchronously waits for a pulse signal on this monitor. The monitor MUST already be entered when calling this method, and it will still be entered when this method returns, even if the method is cancelled. This method internally will leave the monitor while waiting for a notification.
Asynchronously waits for a pulse signal on this monitor. The monitor MUST already be entered when calling this method, and it will still be entered when this method returns. This method internally will leave the monitor while waiting for a notification.