using System.Collections.Generic;
using System.Threading.Tasks;
public static async void Main()
private static async Task TestAsync()
await GetCanceledAsync();
Console.WriteLine("No Exception.");
catch (OperationCanceledException)
Console.WriteLine("Canceled.");
private static Task GetCanceledAsync()
var completionSource = new TaskCompletionSource<bool>(false);
completionSource.TrySetCanceled();
return completionSource.Task;