【C#】CancellationTokenの使い方

はじめに

C#の非同期プログラミングは、効率的なアプリケーション開発に不可欠です。しかし、非同期操作の管理と制御は複雑になることがあります。ここでは、C#における非同期操作のキャンセルを管理するための重要な構造体の一つ、CancellationTokenについて詳しく解説します。

CancellationTokenの基本

CancellationTokenは、非同期操作のキャンセル要求を表すために使用されます。これは、タスクや操作がキャンセルされたかどうかを確認するために使用され、直接的にキャンセルを開始する能力はありません。主に、IsCancellationRequestedプロパティをチェックすることで、取り消し要求があったかどうかを監視します。

プロパティとメソッド

CancellationTokenには、キャンセル処理をより細かく制御するためのいくつかの重要なプロパティとメソッドがあります。最も一般的なのはIsCancellationRequestedですが、それ以外にもThrowIfCancellationRequestedメソッドがあり、これは取り消しが要求された場合に例外をスローするために使用されます。

使用例

ここでは、実際のC#コードを使ってCancellationTokenの使用方法を示します。たとえば、非同期メソッドにCancellationTokenを渡し、定期的にIsCancellationRequestedプロパティをチェックして、要求された場合は処理を中断する方法です。

C#
public async Task LongRunningOperation(CancellationToken cancellationToken)
{
    while (!cancellationToken.IsCancellationRequested)
    {
        // 長時間実行される操作
    }
    if (cancellationToken.IsCancellationRequested)
    {
        // キャンセル処理
    }
}

まとめ

CancellationTokenは、C#の非同期プログラミングにおいて、タスクや操作の取り消し要求を効率的に処理するために使用される重要な構造体です。これにより、プログラムのレスポンシブ性と信頼性が向上し、UXが改善されます。

参考リンク

関連

【C#】CancellationTokenSourceの使い方

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です