ContinueWith
是 C# 中 Task 類的一個方法,用于在任務完成后執行另一個任務。它可以處理異步操作的結果,但是需要使用 async/await
語法來處理結果。
下面是一個示例,展示了如何使用 ContinueWith
處理異步操作的結果:
using System;
using System.Threading.Tasks;
class Program
{
static async Task Main(string[] args)
{
await Task.Run(async () =>
{
Console.WriteLine("Start");
await Task.Delay(1000);
Console.WriteLine("End");
}).ContinueWith(t =>
{
if (t.IsCompletedSuccessfully)
{
Console.WriteLine("ContinueWith: Task completed successfully");
Console.WriteLine($"Result: {t.Result}");
}
else
{
Console.WriteLine("ContinueWith: Task failed");
Console.WriteLine($"Exception: {t.Exception}");
}
});
Console.ReadKey();
}
}
在這個示例中,我們首先創建了一個異步任務,該任務會先輸出 “Start”,然后等待 1 秒,最后輸出 “End”。接下來,我們使用 ContinueWith
方法來處理這個任務的結果。如果任務成功完成,我們將輸出 “ContinueWith: Task completed successfully” 和任務的結果。如果任務失敗,我們將輸出 “ContinueWith: Task failed” 和異常信息。