在C#中,異步方法是一種可以執行長時間運行操作的方法,而不會阻塞調用它的線程。異步方法通常使用async
和await
關鍵字來定義和使用。
以下是定義和使用異步方法的步驟:
async
關鍵字,表示該方法是異步的。await
關鍵字等待一個異步操作的完成。Task
或Task<T>
對象,表示異步操作的結果。下面是一個簡單的示例,展示了如何定義和使用異步方法:
using System;
using System.Threading.Tasks;
class Program
{
static async Task Main(string[] args)
{
Console.WriteLine("開始執行...");
// 調用異步方法并等待其完成
await DoAsyncWork();
Console.WriteLine("異步方法執行完畢。");
}
// 定義一個異步方法,模擬長時間運行的操作
static async Task DoAsyncWork()
{
Console.WriteLine("開始執行異步工作...");
// 使用 await 等待一個耗時操作的完成
await Task.Delay(3000);
Console.WriteLine("異步工作執行完畢。");
}
}
在這個示例中,我們定義了一個名為DoAsyncWork
的異步方法,它使用await Task.Delay(3000)
模擬了一個耗時操作。在Main
方法中,我們調用DoAsyncWork
方法并使用await
關鍵字等待其完成。這樣,Main
方法就不會被阻塞,而是可以繼續執行其他任務。