我的代码有两个作业,第一个占用CPU 0.3%,第二个消耗CPU 80%。这两个工作重复工作如下:
while True:
job1()
job2()
我发现在第一个循环之后,即使在job1()中工作,CPU消耗也没有下降,消耗总是80%。
所以我修改了代码:
n = 0
while True:
n += 1
if n > 1:
print 'to sleep'
time.sleep(100000000)
continue
job1()
job2()
我在sleep()
中发现CPU消耗为80%。为什么会这样?
答案 0 :(得分:0)
sleep()
函数暂停执行该进程,这意味着process scheduler可以安排其他作业在CPU上执行。这可以解释高使用率,特别是如果你在后台运行其他需要CPU的任务。
了解如何衡量CPU使用率会很有帮助。