我在运行外部程序的 python 中有 damon:
subprocess.call(["java", "-jar", "start.jar"])
当我杀死守护进程时,子进程(java)仍在运行
我怎样才能让子进程也被杀死?
最佳答案
使用 subprocess.Popen()
而不是 subprocess.call()
。例如:
import subprocess
my_process = subprocess.Popen(['ls', '-l'])
终止 child :
my_process.kill()
要捕获终止信号,您可以这样做:
import signal
import sys
def signal_handler(signal, frame):
sys.exit(0)
signal.signal(signal.SIGINT, signal_handler)
关于python - python守护进程中的子进程kill,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5114812/