最佳化 .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>
此範例使用非同步方法 LongRunningTask1
和 LongRunningTask2
,表示冗長的操作。 Task.WhenAll(task1, task2)
非同步等待兩個任務完成。這消除了對 Task.Run()
的需要,並提供了一種使用 .Result
存取結果的乾淨方法。
這說明了 C# 4.5 非同步程式設計模型的優勢,能夠創建高效且可擴展的平行任務處理。
以上是如何在 .NET 4.5 中高效運行並發非同步任務並檢索結果?的詳細內容。更多資訊請關注PHP中文網其他相關文章!