0

私はc++でプログラムを開発し、Windows XPで実行すると、使用可能なすべてのCPUを100%使用しますが、Windows 7でアプリケーションを実行すると、タスクを次のように設定しても、アプリが40%になることはほとんどありません。タスクバーのリアルタイムまたは優先度の高いものは、OSに、コードのwinXPにあるような最大の使用可能なCPUをアプリケーションに使用させる方法があります。APIやライブラリのようなものを意味します。

4

3 に答える 3

3

これは、複数のコアを使用していることが原因である可能性が高くなります。CPU を 100% 使用するには、複数のスレッドを作成する必要がある場合があります。

于 2012-04-04T21:30:24.613 に答える
0

アプリが何らかの種類の IO を使用していて、その IO が XP で台無しになっている場合 (悪いドライバーやその他の何か)、アプリが CPU を完全に回転させている可能性があります。

7 はそのような領域で最適化されている可能性が高いため、遅い (ディスク、ネットワーク) 処理が完了するまで CPU を解放します。

于 2012-04-04T21:36:13.500 に答える
0

また、このスレッドが何をしているのか、およびプロセッサから離れた時間 (スリープ、オブジェクトの待機) を費やす頻度によっても要因になる可能性がありますが、MK はそれをかなり要約してくれました。こちらもご覧ください:

http://msdn.microsoft.com/en-us/library/windows/desktop/ms686277%28v=vs.85%29.aspx

于 2012-04-05T02:07:40.827 に答える