PDA

Visualizza la versione completa : Eseguire un processo in background


MaskPZ
05-05-2006, 00:09
Come posso far eseguire un processo in background tramite codice??Qual è il codice da usare per avere l'effetto di & da shell???

GRAZIE

netarrow
06-05-2006, 20:01
dipende dal sistema operativo, su windows potresti usare l'api CreateProcess e automaticamente è come usare &, se invece vuoi attendere la fine di questo processo devi usare WaitForSingleObject

:ciauz:

bako
07-05-2006, 20:42
Originariamente inviato da MaskPZ
Come posso far eseguire un processo in background tramite codice??Qual è il codice da usare per avere l'effetto di & da shell???

GRAZIE
nn dovrai mica far un progetto per l'esame di una shell?
cmq:


pid=fork();
if (!pid)
execvp(...)
else
if (non c'è la &) waitpid(pid,NULL,0);

così va, solo che dopo t lascia in giro degli zombie
:ciauz:

MaskPZ
07-05-2006, 22:05
Originariamente inviato da bako
nn dovrai mica far un progetto per l'esame di una shell?
cmq:


pid=fork();
if (!pid)
execvp(...)
else
if (non c'è la &) waitpid(pid,NULL,0);

così va, solo che dopo t lascia in giro degli zombie
:ciauz:

Grazie, avevo già risolto esattamente così! :)

Loading