我知道 os.nice()
对于父进程非常有效,但是我需要对子进程进行修改。我找到了方法,但是它似乎不是很方便,也不过分:
os.system("renice -n %d %d" % ( new_nice, suprocess.pid ) )
补习后,它不会返回结果良好的水平。
还有更干净的方法来重用python中的子进程吗?
最佳答案
使用 preexec_fn
的subprocess.Popen
参数:
例子:
>>> Popen(["nice"]).communicate()
0
(None, None)
>>> Popen(["nice"], preexec_fn=lambda : os.nice(10)).communicate()
10
(None, None)
>>> Popen(["nice"], preexec_fn=lambda : os.nice(20)).communicate()
19
(None, None)
关于python - 是否可以取消子流程?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/2463533/