In Python sotto Windows: voglio eseguire del codice in un processo separato. E non voglio che il genitore attenda che finisca. Provato questo:Esegui un processo ed esci senza attenderlo
from multiprocessing import Process
from time import sleep
def count_sheeps(number):
"""Count all them sheeps."""
for sheep in range(number):
sleep(1)
if __name__ == "__main__":
p = Process(target=count_sheeps, args=(5,))
p.start()
print("Let's just forget about it and quit here and now.")
exit()
che avvia il processo figlio e continua l'esecuzione. Tuttavia, quando il genitore raggiunge la fine, attende comunque che il bambino esca.
C'è un modo per far uscire il genitore anche quando il bambino è in esecuzione? Certo, potrei semplicemente eseguire un nuovo interprete python usando subprocess.Popen
e dare ad esso il conteggio delle pecore come uno script separato.
Ancora, c'è questo intero modulo per giocare con i processi di codice Python, quindi mi piacerebbe approfittarne al posto di hackerare sul sistema operativo. Inoltre, sarebbe fantastico se lo stesso codice funzionasse ovunque in Python, non solo su Windows.
Qui intorno di solito vedo il problema opposto. – mob