C#でスレッドプールからタスクを実行するとき、 タスクを途中でキャンセルしたい場面も出てくるでしょう。 スレッドプールからタスクを実行するにはTaskFactory.StartNew()を用います。 TaskFactory.StartNew()メソッドによりタスクを実行するとき、 タスクを途中でキャンセルできるようにするには 第2引数にCancellationTokenを指定します。 これはCancellationTokenSource.Tokenフィールドとなります。 タスクにキャンセル要求を出すにはCancellationTokenSource.Cancel()メソッドを実行します。 これによりキャンセルフラグが立ちます。 タスク側では特定のタイミングでこのキャンセルフラグをチェックする必要があります。 キャンセルフラグはCancellationToken.IsCancellation
![C#のタスクキャンセル](https://cdn-ak-scissors.b.st-hatena.com/image/square/f499c91fae35c2ad5b49d6e3df44614bdc798bf3/height=288;version=1;width=512/https%3A%2F%2Fftvoid.com%2Fblog%2Fwp-content%2Fthemes%2Fdp-colors%2Fimg%2Fpost_thumbnail%2Fnoimage.png)