- ベストアンサー
CPU稼働率を向上させる方法
いつもお世話になります。 今、Visual Studio .NET 2003 で MFCアプリケーションを作成しました。 そのアプリケーションを起動実行したときの CPU稼働率・パフォーマンスを上げる、設定する方法はありませんか? どうぞよろしくお願い致します。
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
★『SetPriorityClass』関数で設定できます。 ・関連関数として『GetPriorityClass』、『GetThreadPriority』、『SetThreadPriority』があります。 ・http://forums.belution.com/ja/vc/000/070/42s.shtml→『CPUの優先度の設定』 ・http://yokohama.cool.ne.jp/chokuto/urawaza/api/SetPriorityClass.html→『SetPriorityClass』 ・下にサンプルを載せます。 サンプル: (1)…SetPriorityClass( GetCurrentProcess(), REALTIME_PRIORITY_CLASS ); (2)…SetPriorityClass( GetCurrentProcess(), HIGH_PRIORITY_CLASS ); (3)…SetPriorityClass( GetCurrentProcess(), ABOVE_NORMAL_PRIORITY_CLASS ); (4)…SetPriorityClass( GetCurrentProcess(), NORMAL_PRIORITY_CLASS ); (5)…SetPriorityClass( GetCurrentProcess(), BELOW_NORMAL_PRIORITY_CLASS ); (6)…SetPriorityClass( GetCurrentProcess(), IDLE_PRIORITY_CLASS ); 最後に: ・上記の定数はタスクマネージャの『プロセス』タブの優先度 (1)『リアルタイム(R)』 (2)『高(H)』 (3)『通常以上(A)』 (4)『通常(N)』 (5)『通常以下(B)』 (6)『底(L)』 ・の順です。 ・以上。お好きな優先度を設定して下さい。
その他の回答 (1)
- furyfox
- ベストアンサー率56% (58/103)
SetThreadPriorityや SetPriorityClassでプロセスやスレッドの優先順位を指定できます。 マルチコア(or CPU)の場合は SetThreadAffinityMask/SetProcessAffinityMask/SetThreadIdealProcessor等を使って どのCPUに優先的に割り振るかの設定も可能です。 http://msdn.microsoft.com/library/ja/jpdllpro/html/Toppage_ProcessThread.asp
お礼
ありがとうございました。