使用 python 启动进程并获取 PID (Linux)
Start a process with python and get the PID (Linux)
我正在使用带有 Yocto 映像的 Intel Galileo 上的 Iot,我知道 python 脚本将执行 'aplay audio.wav',但我希望它也能获得它的 PID一个播放过程,以防程序不得不停止它。抱歉,非常简短。
subprocess.Popen
对象的pid
属性包含它的PID,但是如果你需要终止子进程那么你应该只使用terminate()
方法。
不过,如果您需要更好地控制音频,您应该考虑使用 pyao 或 pygst/gst-python。
与Python一起使用:
import os
my_pid = os.getpid()
f_pid = open('/var/run/app.pid', 'w')
f_pid.write(my_pid)
f_pid.close()
但是如果你正在使用这个游戏,你是在为 Python 做 syscall() 吗?您可以直接通过 Shell 脚本执行并通过以下方式轻松获取 PID:
echo $! > /var/run/[=11=].pid
您可以读取 file.pid 并为 PID 发送 kill。
我正在使用带有 Yocto 映像的 Intel Galileo 上的 Iot,我知道 python 脚本将执行 'aplay audio.wav',但我希望它也能获得它的 PID一个播放过程,以防程序不得不停止它。抱歉,非常简短。
subprocess.Popen
对象的pid
属性包含它的PID,但是如果你需要终止子进程那么你应该只使用terminate()
方法。
不过,如果您需要更好地控制音频,您应该考虑使用 pyao 或 pygst/gst-python。
与Python一起使用:
import os
my_pid = os.getpid()
f_pid = open('/var/run/app.pid', 'w')
f_pid.write(my_pid)
f_pid.close()
但是如果你正在使用这个游戏,你是在为 Python 做 syscall() 吗?您可以直接通过 Shell 脚本执行并通过以下方式轻松获取 PID:
echo $! > /var/run/[=11=].pid
您可以读取 file.pid 并为 PID 发送 kill。