You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Modified AsyncResultAwaiter implementation to throw if the operation was canceled or faulted (to match TaskAwaiter behaviour).
Implemented AsyncCompletionSource as a sealed analog of TaskCompletionSource.
Removed public completion methods from AsyncResult (moved them to AsyncCompletionSource).
Made SpinUntilCompleted an extension method (was AsyncResult instance method).
Changed IAsyncOperation.Exception type to AggregateException to match Task.
Changed IAsyncOperationEvents.Completed event signature & behaviour to always execute handler (event if it was registered after the comperation has copleted).
Removed AsyncResult constructors that accepted exceptions.
Changed AsyncResult.Result property to throw AggregateException when faulted or canceled to mathch Task behaviour.
Fixed
AsyncResultQueue now does not remove uncompleted operations from the queue.
AsyncResult.Exception now only returns non-null value when the operation is faulted.