使用 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