如何在 python 中的循环内打开和关闭可执行文件
How to open and close an executable inside a loop in python
Python菜鸟,如果这是一个愚蠢的问题,我提前道歉。
所以,我写了这段代码
import subprocess
import os, signal
import time
timeout = time.time() + 60*5
count = 0
while True:
print("running")
if time.time() > timeout:
break
speedtest = subprocess.Popen("C:\Program Files\Speedtest\Speedtest.exe")
time.sleep(30.0)
speedtest.terminate()
我正在尝试打开 speedtest.exe,保持打开状态 30 秒,然后关闭。我想重复这个 5 分钟。
但是当进程第一次关闭并尝试重新打开时,我收到一条错误消息说另一个实例已经 运行。
我该如何解决这个问题?
终止可执行文件后您将不得不睡一会儿。这是因为终止需要一些时间,不幸的是,terminate 方法在编译时并没有花费那么多时间。它直接从中终止到再次启动exe。
通过等待,您正在等待可执行文件停止然后启动应用程序。不过,您将不得不稍微弄乱时间安排,因为通常会有随机的终止时间。
Python菜鸟,如果这是一个愚蠢的问题,我提前道歉。
所以,我写了这段代码
import subprocess
import os, signal
import time
timeout = time.time() + 60*5
count = 0
while True:
print("running")
if time.time() > timeout:
break
speedtest = subprocess.Popen("C:\Program Files\Speedtest\Speedtest.exe")
time.sleep(30.0)
speedtest.terminate()
我正在尝试打开 speedtest.exe,保持打开状态 30 秒,然后关闭。我想重复这个 5 分钟。
但是当进程第一次关闭并尝试重新打开时,我收到一条错误消息说另一个实例已经 运行。
我该如何解决这个问题?
终止可执行文件后您将不得不睡一会儿。这是因为终止需要一些时间,不幸的是,terminate 方法在编译时并没有花费那么多时间。它直接从中终止到再次启动exe。
通过等待,您正在等待可执行文件停止然后启动应用程序。不过,您将不得不稍微弄乱时间安排,因为通常会有随机的终止时间。