タグ

関連タグで絞り込む (1)

タグの絞り込みを解除

VB2005とマルチスレッドに関するiloのブックマーク (2)

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

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

  • Background Workerで夢のマルチスレッドがついに!(1/2) - @IT

    太古、パソコンは1度に1つのプログラムしか実行できなかった。例えば、ワープロソフトを使用中に表計算ソフトを使おうと思ったら、ワープロソフトを終了しなければ表計算ソフトを起動することができなかった。また、パソコンは1度に1つの仕事しかこなせなかった。例えば、プリンタへの印刷を開始させると、印刷が終了するまでパソコンは操作を受け付けず、ユーザーはただ待っているしかなかった。つまり利用者にストレスを与えていた。 このような制約は、パソコンの能力が圧倒的に不足していることによって起こっていた。そして、パソコンの性能向上によって、これらの制約は徐々に解消されていき、いまやワープロソフトと表計算ソフトを同時に開くのは当たり前であるし、プリンタが印刷を開始したからといって操作不能になることもない。利用者のストレスは大幅に軽減された。 プログラマたるもの、このようなストレスを利用者に感じさせない使い勝手を

  • 1