Win32 ベース優先度クラス
定数 説明
WIN32_ABOVE_NORMAL_PRIORITY_CLASS 0x00008000 WIN32_NORMAL_PRIORITY_CLASS よりも高いけれど WIN32_HIGH_PRIORITY_CLASS よりは低い優先度のプロセス。
WIN32_BELOW_NORMAL_PRIORITY_CLASS 0x00004000 WIN32_IDLE_PRIORITY_CLASS よりも高いけれど WIN32_NORMAL_PRIORITY_CLASS よりは低い優先度のプロセス。
WIN32_HIGH_PRIORITY_CLASS 0x00000080 ただちに実行しなければならないような、時間制約の厳しいプロセス。 このプロセスのスレッドは、優先度クラスが NORMAL あるいは IDLE であるすべてのプロセスのスレッドを先取りします。 このクラスを使う例はタスクリストです。 タスクリストは、ユーザーが呼び出したときは OS の負荷にかかわらずすぐに反応しなければなりません。 この優先度クラスを使うときには細心の注意が必要です。 この優先度クラスのアプリケーションは CPU をほぼすべて使い切ってしまうこともあるからです。
WIN32_IDLE_PRIORITY_CLASS 0x00000040 システムがアイドル状態のときにだけスレッドが実行されるプロセス。 より優先度クラスの高いプロセスが実行中の場合は、 そちらのスレッドが優先的に実行されます。 このクラスを使う例はスクリーンセーバーです。 この優先度クラスは、子プロセスにも引き継がれます。
WIN32_NORMAL_PRIORITY_CLASS 0x00000020 特別なスケジューリングが不要なプロセス。
WIN32_REALTIME_PRIORITY_CLASS 0x00000100 可能な限り優先度を高くするプロセス。 このプロセスのスレッドは、他のすべてのプロセスのスレッドを先取りします。 重要なタスクをこなす OS のプロセスであっても例外ではありません。 リアルタイムプロセスを非常に短い間隔で実行させると、 ディスクキャッシュがフラッシュされなくなったり マウスが反応しなくなったりすることがあり得ます。