//原文:https://www.cnblogs.com/yan7/p/8401681.html
//原文:https://www.cnblogs.com/s5689412/p/10073507.html
public void test2() { //在出現await的地方,異步才開始發生 DemoAsync2(); Console.WriteLine("同步代碼"); } async Task DemoAsync2() { //感覺:await標識異步代碼的開始 //await關鍵字是函數開始變成異步的地方,它像是一個一元操作符 //執行的過程: //如果await發現awaitable尚未完成,那么它就會以異步方式運行。它讓awaitable去運行函數剩余部分直到結束,然后從異步函數中返回。 //接下來,當awaitable結束之后,它會執行異步函數的剩余部分。 Console.WriteLine("已經睡了3秒 前"); //await標識異步代碼的開始 await Task.Run(() => { Thread.Sleep(3000); Console.WriteLine("已經睡了3秒 了"); }); Console.WriteLine("已經睡了3秒 后"); Console.WriteLine("又睡了3秒 前"); Thread.Sleep(3000); Console.WriteLine("又睡了3秒 后"); }
執行后的截圖:

