首頁 > 後端開發 > C++ > 如何在 .NET 4.5 中高效運行並發非同步任務並檢索結果?

如何在 .NET 4.5 中高效運行並發非同步任務並檢索結果?

Patricia Arquette
發布: 2025-01-13 06:45:47
原創
402 人瀏覽過

How Can I Efficiently Run and Retrieve Results from Concurrent Asynchronous Tasks in .NET 4.5?

最佳化 .NET 4.5 中的並發非同步任務執行與結果擷取

.NET 4.5 提供了強大的平行任務執行和高效能結果收集工具,顯著提高了應用程式效能。 然而,更簡單的方法可能無法充分利用框架的功能。

改良的方法如下:

<code class="language-csharp">async Task<int> LongRunningTask1() {
  // ... your asynchronous code ...
  return 0;
}

async Task<int> LongRunningTask2() {
  // ... your asynchronous code ...
  return 1;
}

// ... your calling code ...
{
  Task<int> task1 = LongRunningTask1();
  Task<int> task2 = LongRunningTask2();
  await Task.WhenAll(task1, task2);
  // Access results via task1.Result and task2.Result
}</code>
登入後複製

此範例使用非同步方法 LongRunningTask1LongRunningTask2,表示冗長的操作。 Task.WhenAll(task1, task2) 非同步等待兩個任務完成。這消除了對 Task.Run() 的需要,並提供了一種使用 .Result 存取結果的乾淨方法。

這說明了 C# 4.5 非同步程式設計模型的優勢,能夠創建高效且可擴展的平行任務處理。

以上是如何在 .NET 4.5 中高效運行並發非同步任務並檢索結果?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
作者最新文章
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板