首页 > 解决方案 > 我的 9 行 Python 代码正在使用我的 CPU 的 100%

问题描述

我有一个 python 脚本(test.py),需要使用以下代码每 10-15 分钟重新启动一次:

import subprocess,time
WAIT=700
file_name = ("test.py")
while True:
    process=subprocess.Popen("python "+ file_name)
    now=time.time()
    while time.time() - now < WAIT:
        pass
    process.kill()

但是占用了我 100% 的 CPU 。有什么问题?如果我运行 test.py 只有一切正常。

标签: pythoncpu-usage

解决方案


您应该使用该.sleep函数,它不会使用 CPU 密集型 while 循环:

import subprocess,time
WAIT=700
file_name = ("test.py")
while True:
    process=subprocess.Popen("python "+ file_name)
    time.sleep(WAIT)
    process.kill()

推荐阅读