在一些特定的情况下,我们需要设定我们程序的优先级比较高,这样能保证在程序的运行过程中,程序几乎不用考虑在被CPU执行时不被其他程序意外抢占。
在winbase.h中是这样定义的:
1.函数定义:
WINBASEAPI
BOOL
WINAPI
SetPriorityClass(
__in HANDLE hProcess,
__in DWORD dwPriorityClass
);
第一个参数为进程的句柄,第二个参数为优先级的级别。
2.优先级定义:
#define NORMAL_PRIORITY_CLASS 0x00000020
#define IDLE_PRIORITY_CLASS 0x00000040
#define HIGH_PRIORITY_CLASS 0x00000080
如果我们需要设置自己的程序为最高优先级,我们可以在程序启动后调用:
SetPriorityClass(GetCurrentProcess(), HIGH_PRIORITY_CLASS);