当前位置:  开发笔记 > 开发工具 > 正文

流程优先级是继承的吗?

如何解决《流程优先级是继承的吗?》经验,为你挑选了1个好方法。

想象一下,你有一个运行优先级为AboveNormal的Windows进程A,它启动另一个进程B而不指定优先级.进程B的优先级是否继承了进程A的优先级?那么,流程B的优先级是什么?高于正常,正常还是其他?



1> dyasta..:

如果未指定,则在某些情况下继承优先级.

如果调用进程是在它发生IDLE_PRIORITY_CLASSBELOW_NORMAL_PRIORITY类.否则,除非在CreateProcess调用期间指定,否则它将获得NORMAL_PRIORITY_CLASS.

MSDN在CreateProcess的dwCreationFlags上说:

该参数还控制新进程的优先级,这是用来确定进程的线程的调度优先级.有关值列表,请参阅GetPriorityClass.如果没有指定的优先级标志,则优先级默认为NORMAL_PRIORITY_CLASS除非优先级创建进程的是IDLE_PRIORITY_CLASS或BELOW_NORMAL_PRIORITY_CLASS.在这种情况下,子进程接收调用进程的默认优先级.

因此答案是NORMAL优先级.基本上任何高于正常水平的东西都不会传递给孩子.

推荐阅读
农大军乐团_697
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有