在 C# 中非同步呼叫方法
C# 中的非同步程式設計是一種針對活動阻塞或訪問延遲的高效方法。如果一個活動像這樣在一個同步程序中被阻塞,那麼整個應用程式就會等待,這將花費更長的時間。應用程式將停止響應。使用非同步方法,應用程式還將繼續執行其他任務。
帶有 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(); }
廣告