/// <summary>Wake up all of the waiters and null out the field.</summary> /// <param name="waiters">The waiters.</param> /// <param name="result">The value with which to complete each waiter.</param> internal static void WakeUpWaiters(ref ReaderInteractor <bool> waiters, bool result) { ReaderInteractor <bool> w = waiters; if (w != null) { w.Success(result); waiters = null; } }
/// <summary>Wake up all of the waiters and null out the field.</summary> /// <param name="waiters">The waiters.</param> /// <param name="result">The success value with which to complete each waiter if <paramref name="error">error</paramref> is null.</param> /// <param name="error">The failure with which to cmplete each waiter, if non-null.</param> internal static void WakeUpWaiters(ref ReaderInteractor <bool> waiters, bool result, Exception error = null) { ReaderInteractor <bool> w = waiters; if (w != null) { if (error != null) { w.Fail(error); } else { w.Success(result); } waiters = null; } }