我的脚本有多个组件,只有一些部分需要很好.即,以低优先级运行.
有没有办法只使用一种Python方法,或者我需要将其分解为多个进程?
我正在使用Linux,如果这很重要的话.
解决方法:
您可以编写一个装饰器,在进入和退出时重新运行正在运行的进程:
import os
import functools
def low_priority(f):
@functools.wraps(f)
def reniced(*args, **kwargs):
os.nice(5)
try:
f(*args,**kwargs)
finally:
os.nice(-5)
return reniced
然后你可以这样使用它:
@low_priority
def test():
pass # Or whatever you want to do.
免责声明:
>在我的机器上工作,不确定os.nice是如何通用的.
>如下所述,它是否有效可能取决于您的操作系统/分发或root.
> Nice是基于每个进程的.每个进程具有多个线程的行为可能不会理智,并且可能会崩溃.