using System.Threading.Tasks;
using System.Diagnostics;
public static void Main()
Task.Run(() => MainRun()).GetAwaiter().GetResult();
private static async Task MainRun()
Func<Task> taskDelay = () => TaskDelay(100);
private static async Task TaskDelay(int millisecondsTimeout)
var sw = Stopwatch.StartNew();
await Task.Delay(millisecondsTimeout);
Console.WriteLine($"6 TaskDelay.Task delay completed in {sw.ElapsedMilliseconds}ms");