タグ

Threadと.netに関するk2h6-432のブックマーク (1)

  • バックグラウンド処理を途中でキャンセルするには?[2.0のみ、C#、VB] - @IT

    バックグラウンド処理をキャンセル可能にするために、BackgroundWorkerコンポーネントのWorkerReportsProgressプロパティをtrueに設定しておく。 BackgroundWorkerコンポーネントのキャンセル処理 BackgroundWorkerコンポーネントにおけるキャンセル処理の流れは以下のようになる。 BackgroundWorkerコンポーネントのCancelAsyncメソッドを呼び出す。これにより、BackgroundWorkerコンポーネントのCancellationPendingプロパティがtrueに設定される。 重い処理を行っているDoWorkイベント・ハンドラでは、CancellationPendingプロパティがtrueに設定されていないか(=キャンセルが要求されていないか)を定期的にチェックし、trueになっていれば「e.Cancel」*1

  • 1