使用 Async 和 Await 關鍵詞在 C# 中進行非同步程式設計


C# 中的非同步程式設計是一種針對被阻塞或訪問延遲的活動的高效方法。如果某個活動在此類同步程序中被阻塞,則整個應用程式都會等待並且需要更長時間。應用程式停止響應。使用非同步方法,應用程式還可以繼續執行其他任務。

C# 中的 async 和 await 關鍵字用於非同步程式設計。使用它們,你可以與 .NET Framework 資源、.NET Core 等配合使用。使用 async 關鍵字定義的非同步方法稱為非同步方法。

具有 GUI 的應用程式檢查佇列中的內容,如果有未處理的任務,則將其取出並首先進行處理。程式碼同步執行,並且首先完成未處理的任務。如果處理時間超出預期,則應用程式將顯示停止響應訊息。

讓我們看看上面討論的內容 -

private void OnRequestDownload(object sender, RoutedEventArgs e) {
   var req = HttpWebRequest.Create(_requestedUri);
   var res = req.GetResponse();
}

要解決上述問題,請使用 async 和 await 關鍵字 -

private async void OnRequestDownload(object sender, RoutedEventArgs e) {
   var req= HttpWebRequest.Create(_requestedUri);
   var res = await req.GetResponseAsync();
}

更新時間: 19-6 月-2020

2 千 + 檢視

職業生涯一觸即發

完成課程獲得認證

開始
廣告