2012-04-13 6 views
1

私は素人プログラマーですので、私に同行してください。 私は、ゲーム中にバックグラウンドで動作する(Windows OS用の)プラグインを作成しようとしています。プラグインは実行がCPUを集中的にするスレッドを生成し、異なるCPUコアでのゲームの実行は大きく異なる可能性があるため、プラグインは複数のコアが搭載されたPCでのみ実行できます。 コアあたりのCPU負荷を監視する方法を考えましたが、まだ質問があります。 最低の負荷のコアにスレッドを割り当てるかどうかをプラグインが処理する必要がありますか? 第1の解決策はゲームのパフォーマンスにとってより良いでしょうか?CPUコアあたりのスレッド割り当て(Windowsのみ)

+0

_Pretty please_ ** CPUコアロード、メモリロード、スレッドロード**などを手動で処理しようとはしません**しかし、OSに残してください** ** **重要 - **あなたが一見良いソリューションを考え出すことができれば**。あなたがこのように行動するように頼んでいるのは、次のようなものです:_複数のプログラムがこれを行うかどうかを想像してください!_それらがシステムの負荷に応じて**常に変化していると想像してください* *常に変化するシステム負荷に適応するために、多くのCPU時間**を使用します。なぜあなたはこれをしてはいけないのか分かりますか? – mg30rg

答えて

0

Visual Studio 2010でWindows用のコードを開発している場合は、同時実行可能なランタイムを使用することをお勧めします。 Concurrency Runtime in Visual C++ 2010

プラグインが 最低の負荷をコアにスレッドを割り当てる扱うべきか、私は、システムが私のためにそれを処理させることができますか?

システムを正しく設計できる場合は、システムで処理させることができます。また、コアの数に基づいてコードを変更する必要はありません。そのような詳細はランタイムによってキャプチャされ、生成されるスレッドの数はコアの数に比例します。

+0

(s)彼は "can"ではありませんが、**この種のリソース管理を基になるシステムに残す必要があります。以下の理由からです。システムの負荷に応じて行動が絶えず変化していることを想像して、絶えず変化するシステム負荷に適応するために多くのCPU時間を使います。なぜあなたはこれをしてはいけないのか分かりますか? – mg30rg

関連する問題