我的代码有两个任务,第一个消耗CPU 0.3%,第二个消耗CPU 80%。这两项工作是这样反复进行的:
while True:
job1()
job2()
我发现在第一个循环之后,CPU消耗没有下降,即使它在job1()中工作,消耗总是80%。你知道吗
所以我修改了代码如下:
n = 0
while True:
n += 1
if n > 1:
print 'to sleep'
time.sleep(100000000)
continue
job1()
job2()
我发现当它在sleep()
中时,CPU消耗是80%。为什么会这样?你知道吗
sleep()
函数暂停进程的执行,这意味着process scheduler可以安排其他作业在CPU上执行。这可以解释高使用率的原因,特别是当您在后台运行其他CPU消耗量很大的任务时。你知道吗了解如何度量CPU使用率会很有帮助。你知道吗
相关问题 更多 >
编程相关推荐