C# と VB.NET の質問掲示板

わんくま同盟

ASP.NET、C++/CLI、Java 何でもどうぞ

C# と VB.NET の入門サイト


(過去ログ 59 を表示中)
■33976 / )  Re: BackgroundWorkerでビジー
□投稿者/ 魔界の仮面弁士 (1016回)-(2009/03/15(Sun) 13:34:31)
2009/03/15(Sun) 16:59:24 編集(投稿者)
No33975 (hirosi さん) に返信
> BackGroundWorkerを使用して、バックグラウンドで処理をしています。

BackGroundWorker ではなく、
BackgroundWorker ですよね。


>     if(_BackGroundWorker.IsBusy)
>     {
>         _BackGroundWorker.CancelAsync();
>     }
>     _BackGroundWorker.RunWorkerAsync(パラメータ);

Cancel『Async』というだけあって、このキャンセル処理は非同期的に行われます。
CancelAsync したからといって、その直後にビジー状態を脱するわけではありません。

直ちに続行させたいのなら、別の BackgroundWorker に処理を依頼してください。
単一の BackgroundWorker で行いたいなら、次の作業は
RunWorkerCompleted が発生してから依頼するようにします。

返信 編集キー/


管理者用

- Child Tree -