[Python] Lanciare processo in foreground da un processo in background

Valerio Pachera sirio81 a gmail.com
Mer 13 Giu 2012 17:17:21 CEST


Ciao a tutti, sto creando uno script che lancia mplayer quando si
verifica una certa condizione.
Se lancio lo script in foreground, maplayer funziona, altrimenti
rimane come in sospeso.
Per eseguire il comando uso il modulo 'commands'.

Bastano 2 righe per fare una prova:

---
import commands
commands.getstatusoutput ('mplayer /usr/share/sounds/k3b_success1.wav')
---

python -u prova.py
e
python -u prova.py &

Ho provato anche a forkare il processo ma ottengo lo stesso risultato

---
def play_sound(sound):
	print sound
	commands.getstatusoutput ('mplayer '+ sound )
	
player = multiprocessing.Process ( target=play_sound,
args=(/usr/share/sounds/k3b_success1.wav,) )
player.start()
---

Premetto che non sono un programmatore e python lo conosco parzialmente.

Grazie, ciao.


Maggiori informazioni sulla lista Python