using System; using System.Threading.Tasks; public class Ex3 { public static async Task Run() { /* Example using a Task type */ var lowerCaseString = "i want to be an upper case string"; Console.WriteLine("main: " + lowerCaseString); var upperCaseString = await WorkOnStringAsync(lowerCaseString); Console.WriteLine("main: " + upperCaseString); } private static async Task WorkOnStringAsync(string s) { Console.WriteLine("Task: Async task started"); Console.WriteLine("Task: Waiting for 2 sec"); await Task.Delay(2000); Console.WriteLine("Task: Done waiting, returning the upper case string"); return s.ToUpper(); } }