using System.Threading.Tasks;
public static void Main()
Console.WriteLine("Hello World");
Receiver1Async(task).Wait();
Receiver2Async(task).Wait();
private static async Task Receiver1Async(Task task)
Console.WriteLine("reviever 1 recieves " + exp);
private static async Task Receiver2Async(Task task)
Console.WriteLine("reviever 2 recieves " + exp); }
private static Task MyTask()
var taskSource = new TaskCompletionSource<bool>();
taskSource.SetException(new InvalidOperationException());