こんにちはゲストさん。会員登録(無料)して質問・回答してみよう!

締切り済みの質問

BackgroundWorkerと同期 VB2008 VB2005

VB2008で、BackgroundWorkerを使って重たい処理をさせています。
DoWork内で、ReportProgress(パーセント値)を呼び出して
ProgressChangedメソッドで、そのときの状態を表示させています。ぷプログレスバーだけでなく、あらかじめ作成したデータをTextBoxに情報を表示させています。
しかし、ReportProgress(パーセント値)の後にSystem.Threading.Thread.Sleep(200)を入れないと、たまに
ProgressChangedの中のTextBoxを表示させる処理が実行されなくなります。
ReportProgress(パーセント値)の後に同期をとる処理はSleep以外に何かあるのでしょうか?

BackgroundWorkerの同期について詳しく書かれている本も探しています。

投稿日時 - 2008-07-08 01:22:17

QNo.4159618

困ってます

このQ&Aは役に立ちましたか?

0人が「このQ&Aが役に立った」と投票しています

回答(1)

ANo.1

そうですね Application.DoEvents() あたりでしょうか

ReportProgressを呼び出す頻度が多すぎるのではないでしょうか?

投稿日時 - 2008-07-08 17:03:27