ロード中に動作する2 つのバックグラウンド ワーカー スレッドを持つ WPF アプリケーションがあります。
1 つ目 ( bw1 ) はアプリケーションの開始時に生成され、2 つ目 ( bw2 ) は一定の時間が経過した後に生成されます。
最初のバックグラウンド ワーカー ( bw1 ) の "worker_completed"から2 番目のバックグラウンド ワーカー ( bw2 ) を生成できない状況にあります。
現在、クラスレベルの bool 変数 (デフォルトfalse
) があり、それtrue
をbw1の worker_completed に設定しています。
bw2の開始時に、上記の bool が false かどうかを確認し、そうであればbw2は 100 ミリ秒間スリープします。
ほとんどの場合、これは機能します。改善したいと思います。
bw2がスリープしている間にbw1が確実に実行されるように、 bw1でスレッドの優先度を使用して (最高に設定するなど) できますか?
この目標を達成できるイベント駆動型の方法はありますか?