我的python脚本需要启动后台进程,然后继续处理完成而不等待返回。
后台脚本将处理一段时间,不会生成任何屏幕输出。
不需要进程间数据。
我尝试过使用各种方法子进程,多处理但很明显错过了什么。
有没有人有一个简单的例子?
TIA
答案 0 :(得分:3)
怎么样:
import subprocess
from multiprocessing import Process
Process(target=subprocess.call, args=(('ls', '-l', ), )).start()
它不是那么优雅,但它满足了你的所有要求。
答案 1 :(得分:2)
简单:
subprocess.Popen(["background-process", "arguments"])
如果您想稍后检查后台进程是否完成其工作,请保留对Popen对象的引用并使用它的poll()
方法。
答案 2 :(得分:1)
关于如何在Calling an external command in Python(每个@lecodesportif)执行此操作的各个部分/部分有一个很好的写法。
快速回答的要点是:
retcode = subprocess.call(["ls", "-l"])