Python - How can I terminate a process after X seconds and continue the execution of python code?
本问题已经有最佳答案,请猛点这里访问。
Possible Duplicate:
subprocess with timeout
Best way to launch a process and block until it is finished
我有一个python代码,我需要运行像"curl --user ...."这样的Linux命令。 我需要运行此命令3600秒。 3600秒后,我需要杀死"Linux命令进程"。 我怎么可能这样做?
1 2 3 4 5 6 7 8 9 10 11 12 13 | def timeout_command(command, timeout): import os, datetime, time, signal start = datetime.datetime.now() time_pass = 0 while (time_pass < timeout): process = os.system(command) now = datetime.datetime.now() time_pass = (now-start).seconds print time_pass print timeout_command("curl --user...", 3600) print"Other2" print"Other3" |
关于如何杀死这个的任何线索:"process = os.system(command)"?
最好的祝福,
subprocess是优雅的方式。 如果您正在使用多处理(您可以每3600秒启动一个子进程),请使用os.system("kill -9 + multiprocessing.current_process()。pid)在3600秒后终止子进程