非同步等待

async 方法可以返回 voidTaskTask<T>

返回型別 Task 將等待方法完成,結果將是 voidTask<T> 將在方法完成後從 T 型別返回一個值。

在幾乎所有情況下,async 方法應該返回 TaskTask<T>,而不是 voidasync void 方法無法進行,這會導致各種問題。async 應該返回 void 的唯一情況是事件處理程式。

async / await 通過將你的 async 方法轉換為狀態機來工作。它通過在幕後建立儲存當前狀態和任何上下文(如區域性變數)的結構來實現這一點,並在等待等待等待完成時公開 MoveNext() 方法以推進狀態(並執行任何相關程式碼)。