BackgroundWorker.CancelAsync メソッド
アセンブリ: System (system.dll 内)



CancelAsync は、保留中のバックグラウンド操作を終了する要求を送信し、CancellationPending プロパティに true を設定します。
CancelAsync を呼び出すと、ワーカー メソッドは実行を中止し、終了できます。ワーカー コードでは、CancellationPending プロパティを定期的にチェックし、このプロパティが true に設定されているかどうかを確認する必要があります。
![]() |
---|
DoWork イベント ハンドラ内のコードは、キャンセル要求が行われているときに処理を終了できること、また、ポーリング ループは、CancellationPending に true を設定し損ねる場合があることに注意してください。この場合、キャンセル要求が行われていても、RunWorkerCompleted イベント ハンドラの System.ComponentModel.RunWorkerCompletedEventArgs の Cancelled フラグは true に設定されません。この状況は競合状態と呼ばれ、マルチスレッドのプログラミングにおける一般的な懸念事項です。マルチスレッド デザインに関する問題の詳細については、「マネージ スレッド処理の実施」を参照してください。 |

CancelAsync メソッドを使用して、非同期 ("バックグラウンド") 操作をキャンセルするコード例を次に示します。このコード例は、BackgroundWorker クラスのトピックで取り上げているコード例の一部分です。
Private Sub cancelAsyncButton_Click( _ ByVal sender As System.Object, _ ByVal e As System.EventArgs) _ Handles cancelAsyncButton.Click ' Cancel the asynchronous operation. Me.backgroundWorker1.CancelAsync() ' Disable the Cancel button. cancelAsyncButton.Enabled = False End Sub 'cancelAsyncButton_Click
private void cancelAsyncButton_Click(System.Object sender, System.EventArgs e) { // Cancel the asynchronous operation. this.backgroundWorker1.CancelAsync(); // Disable the Cancel button. cancelAsyncButton.Enabled = false; }

Windows 98, Windows 2000 SP4, Windows Millennium Edition, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition
開発プラットフォームの中には、.NET Framework によってサポートされていないバージョンがあります。サポートされているバージョンについては、「システム要件」を参照してください。


Weblioに収録されているすべての辞書からBackgroundWorker.CancelAsync メソッドを検索する場合は、下記のリンクをクリックしてください。

- BackgroundWorker.CancelAsync メソッドのページへのリンク