I\'m launching a program with subprocess
on Python.
In some cases the program may freeze. This is out of my control. The only thing I can do from the co
Well, there are a couple of methods on the object returned by subprocess.Popen()
which may be of use: Popen.terminate() and Popen.kill(), which send a SIGTERM
and SIGKILL
respectively.
For example...
import subprocess
import time
process = subprocess.Popen(cmd, shell=True)
time.sleep(5)
process.terminate()
...would terminate the process after five seconds.
Or you can use os.kill() to send other signals, like SIGINT
to simulate CTRL-C, with...
import subprocess
import time
import os
import signal
process = subprocess.Popen(cmd, shell=True)
time.sleep(5)
os.kill(process.pid, signal.SIGINT)