version 1.69, 2011/09/15 17:51:43
|
version 1.70, 2011/09/15 19:23:54
|
Line 2874 instruction_detach(struct_processus *s_e
|
Line 2874 instruction_detach(struct_processus *s_e
|
close(pipe_initialisation_segment_signaux[0]); |
close(pipe_initialisation_segment_signaux[0]); |
close(pipe_initialisation_segment_signaux[1]); |
close(pipe_initialisation_segment_signaux[1]); |
|
|
// Être sûr que le processus fils soit déjà présent... |
|
|
|
attente.tv_sec = 0; |
|
attente.tv_nsec = GRANULARITE_us * 1000; |
|
|
|
while(envoi_signal_processus((*s_argument_thread).pid, rpl_signull) != 0) |
|
{ |
|
if (errno != ENOENT) |
|
{ |
|
(*s_etat_processus).erreur_systeme = d_es_processus; |
|
pthread_mutex_unlock(&((*s_etat_processus).mutex)); |
|
return; |
|
} |
|
|
|
scrutation_interruptions(s_etat_processus); |
|
nanosleep(&attente, NULL); |
|
INCR_GRANULARITE(attente.tv_nsec); |
|
} |
|
|
|
// Le fils peut être présent sans être en attente du signal de départ. |
// Le fils peut être présent sans être en attente du signal de départ. |
|
|
if (envoi_signal_processus((*s_argument_thread).pid, rpl_sigstart) != 0) |
if (envoi_signal_processus((*s_argument_thread).pid, rpl_sigstart) != 0) |