2016-04-03 18 views
1

'u edinin Yocto görüntülü Intel Galileo üzerinde çalışıyorum, bir python betiğinin 'aplay audio.wav' dosyasını yürütmesini istiyorum, ama bunu istiyorum Programın bunu durdurmak zorunda kalması durumunda, bu oyunun PID'sini almak. Çok kısa ve kısa olmasından dolayı özür dilerim.Python ile bir işlem başlatın ve PID (Linux)

cevap

4

subprocess.Popen nesnesinin pid özniteliği, PID'sini içerir, ancak alt işlemi sonlandırmanız gerekirse, terminate() yöntemini kullanmanız gerekir. Ses üzerinde daha iyi kontrole ihtiyacınız varsa, bunun yerine pyao veya pygst/gst-python kullanmayı düşünmelisiniz.

0
Python kullanımı ile

:

import os 

my_pid = os.getpid() 
f_pid = open('/var/run/app.pid', 'w') 
f_pid.write(my_pid) 
f_pid.close() 

Ama oyun kullanıyorsanız, Python için syscall() yapıyoruz? Shell Script doğrudan yapmak ve kolayca PID alabilirsiniz:

echo $! > /var/run/$0.pid 

Sen file.pid okuyup PID bir öldürmek gönderebilir.

İlgili konular