C#で非同期操作を実現するために、asyncとawaitをどのように使用するのか。

C#を使った場合、非同期処理を実現するためにasyncとawaitキーワードを使用できます。以下に、簡単な例を示します:

using System;
using System.Net.Http;
using System.Threading.Tasks;

class Program
{
    static async Task Main()
    {
        await DoAsyncOperation();
    }

    static async Task DoAsyncOperation()
    {
        HttpClient client = new HttpClient();
        HttpResponseMessage response = await client.GetAsync("https://jsonplaceholder.typicode.com/posts/1");
        string content = await response.Content.ReadAsStringAsync();
        Console.WriteLine(content);
    }
}

上記の例では、MainメソッドとDoAsyncOperationメソッドの両方がasyncキーワードでマークされており、それが非同期メソッドであることを示しています。DoAsyncOperationメソッドでは、HTTPリクエストの送信やレスポンスの読み取りを含む非同期操作が完了するのを待つために、awaitキーワードが使用されています。awaitキーワードが非同期操作の完了を待っている間、現在のスレッドは解放され、呼び出し元に返され、スレッドがブロックされるのを避けられます。

bannerAds