public static T Wait <T>(this ISuccessfulAwaiter <T> awaiter) { if (!awaiter.IsCompleted) { var evt = new ManualResetEventSlim(); awaiter.OnCompleted(evt.Set); evt.Wait(); } return(awaiter.GetResult()); }
public static void Wait(this ISuccessfulAwaiter awaiter) { if (!awaiter.IsCompleted) { var evt = new ManualResetEventSlim(); awaiter.OnCompleted(evt.Set); evt.Wait(); } awaiter.GetResult(); return; }
public SuccessfulAwaiterTransform(ISuccessfulAwaiter <I> awaiter, Func <I, O> transform) { _awaiter = awaiter; _transform = transform; }
public static ISuccessfulAwaiter <O> Map <I, O>(this ISuccessfulAwaiter <I> awaiter, Func <I, O> transform) { return(new SuccessfulAwaiterTransform <I, O>(awaiter, transform)); }
public static ISuccessfulAwaiter GetAwaiter(this ISuccessfulAwaiter awaiter) { return(awaiter); }
public static ISuccessfulAwaiter <T> GetAwaiter <T>(this ISuccessfulAwaiter <T> awaiter) { return(awaiter); }