-5

これが CPU 使用率の 100% を回避するために機能するかどうかを知りたいです。

Environment.ProcessorCount は、論理プロセッサ数を返します。私の場合、i7 4 実コア 8 論理です。場合によっては、異なる場合があります。しかし、重要なのは CPU 使用率です。アプリケーションで Environment.ProcessorCount コアを使用すると、PC で 100% 使用されます。私がやったらどうしますか

string lesscpu = Environment.ProcessorCount - 1;

だから基本的に1コアを削除します。私の PC では 7 コアで、CPU 使用率は約 80 ~ 90% です。その他の場合:

2 コア 2 論理 = 1 = 50% CPU

2 コア 4 論理 = 3 = 70%+ CPU

2 コア 6 論理 = 5 = 70%+ CPU

これは本当ですか?

アップデート:

この重労働は、私がアイドル状態のときに発生し、プログラムは戻ったときに 1 つのスレッドに切り替わります...すべてのコアで 100% の CPU を長時間使用すると、PC が過熱して再起動したり、さらには再起動したりするのではないかと心配しています。悪い?...

4

2 に答える 2

4

優れたプロセッサを購入して、その機能を使用しないことにはほとんど意味ありません。100% の CPU 使用率を観察できれば、正しく実行できていると確信できます。支払った金額に見合ったものを手に入れスレッドから最大の同時実行性を得るプログラムを作成しました。よくできた。

起こりうる唯一の間違いは、Thread.Priority を下げないことです。他のプログラムがプロセッサをめぐって競合するときに、他のプログラムが遅くならないように気をつけている場合、これは重要です。

于 2013-08-10T18:48:39.017 に答える