問題タブ [cross-thread]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
2 に答える
1014 参照

c# - C# で各バックグラウンド ワーカーの反復ごとに新しい作業を開始するループで複数のバックグラウンド ワーカーを使用する方法

特定の座標で 4 つのオブジェクトを並行して移動するには、4 つのバックグラウンド ワーカーを使用する必要があります。つまり、それらを一緒に開始し、一緒に停止します。

50 回ループするループを作成し、ワーカーを開始する必要があるたびに、Do_Work()メソッドを停止して次の反復で再開するようにワーカーが作業を完了した後、ワーカーを呼び出す次のメソッドを作成しました。

Do_Work()4 つのバックグラウンド ワーカー用の 4つのメソッドがあります。以下はその 1 つです。

問題は、ワーカーが 1 回しか実行されず、次のエラーで実行が停止したことです。

この BackgroundWorker は現在ビジーで、複数のタスクを同時に実行できません。

ここに画像の説明を入力

注: 毎回新しいバックグラウンド ワーカーを作成しようとしましたが、正しく機能せず、50x4 バックグラウンド ワーカーを宣言したため、実行が応答しなくなりました!!.

バックグラウンド ワーカーは次のように登録されます。