PDA

View Full Version : wait e processi


Arpeda
15-06-2003, 22:34
Ciao ragazzi,
ho questa curiosità, supponiamo un processo crei N figli, questo deve terminare dopo che TUTTI i figli sono morti (ora semplicemente dormono per un tempo random). per risolvere questa cosa ho fatto un ciclo attivo che attende che tutti i processi muoiano. c'è un altro modo ...
magari qualche parametro della funzione wait o waitpid ....

Ciao
Arpeda

ilsensine
15-06-2003, 22:40
Qual è il problema? Fai tanti waitpid quanti sono i processi figli
man waitpid?

Arpeda
15-06-2003, 22:45
volevo sapere solo se c'era un modo più elegante che fare una wait per ogni processo ....

ilsensine
15-06-2003, 22:49
Mi sembra di no

ilsensine
15-06-2003, 22:50
Tra le opzioni di waitpid è documentato __WALL, ma non l'ho mai provato. Dai una occhiata...

Arpeda
15-06-2003, 23:04
ho provato con
waitpid(0,NULL,__WALL);
ma sembra non andare

Ciao
Arpeda

ilsensine
16-06-2003, 09:21
Puoi provare anche con waitpid(-1, NULL, __WALL)?

In alternativa, potresti demandare l'exec a un altro thread, invece che ad un fork del processo...un pò meno efficiente, un dramma per la sicurezza, ma così __WALL dovrebbe andare.

Arpeda
16-06-2003, 10:50
Originally posted by "ilsensine"

Puoi provare anche con waitpid(-1, NULL, __WALL)?


provato ma niente da fare ...

Arpeda

Omni81
16-06-2003, 23:21
fai while(wait(NULL) != (pid)-1)
dovrebbe andare.