作業を複数のスレッドに分散するアプリケーションがあります。1 つのスレッドで CPU 負荷がかかりすぎて、他のすべてのスレッドが影響を受ける場合があります。1 つのスレッドが CPU を使用して上昇している場合に一時停止するか、スライスしてすべてのスレッドの負荷が多かれ少なかれ均等になるようにスレッドを管理するにはどうすればよいでしょうか。
更新された私のタスクは独立しています。各スレッドにパフォーマンス カウンターを追加して負荷を測定できるかどうかは不明です。スレッドが制限を超えた場合は、後で一時停止します。
TPL 負荷分散の使用に関する更新済みの問題は、スレッドが STA であることです。一種の解決策は、「ラウンドロビン負荷分散」などのよく知られたアルゴリズムに従って、自作の負荷分散を作成することです。