version 1.89, 2011/09/20 07:16:40
|
version 1.91, 2011/09/20 14:36:30
|
Line 191 rplinit(int argc, char *argv[], unsigned
|
Line 191 rplinit(int argc, char *argv[], unsigned
|
&attributs_mutex); |
&attributs_mutex); |
pthread_mutexattr_destroy(&attributs_mutex); |
pthread_mutexattr_destroy(&attributs_mutex); |
|
|
pthread_mutexattr_init(&attributs_mutex); |
# ifndef SEMAPHORES_NOMMES |
pthread_mutexattr_settype(&attributs_mutex, PTHREAD_MUTEX_NORMAL); |
sem_init(&((*s_etat_processus).semaphore_fork), 0, 0); |
pthread_mutex_init(&((*s_etat_processus).mutex_fork), |
# else |
&attributs_mutex); |
if (((*s_etat_processus).semaphore_fork = sem_init3(0, getpid(), |
pthread_mutexattr_destroy(&attributs_mutex); |
pthread_self())) == SEM_FAILED) |
pthread_mutex_lock(&((*s_etat_processus).mutex_fork)); |
{ |
|
if ((*s_etat_processus).langue == 'F') |
|
{ |
|
uprintf("+++Système : Mémoire insuffisante\n"); |
|
} |
|
else |
|
{ |
|
uprintf("+++System : Not enough memory\n"); |
|
} |
|
|
|
return(EXIT_FAILURE); |
|
} |
|
# endif |
|
|
pthread_mutexattr_init(&attributs_mutex); |
pthread_mutexattr_init(&attributs_mutex); |
pthread_mutexattr_settype(&attributs_mutex, PTHREAD_MUTEX_NORMAL); |
pthread_mutexattr_settype(&attributs_mutex, PTHREAD_MUTEX_NORMAL); |
Line 3474 rplinit(int argc, char *argv[], unsigned
|
Line 3486 rplinit(int argc, char *argv[], unsigned
|
pthread_mutex_destroy(&((*s_etat_processus).mutex)); |
pthread_mutex_destroy(&((*s_etat_processus).mutex)); |
pthread_mutex_destroy(&((*s_etat_processus).mutex_allocation)); |
pthread_mutex_destroy(&((*s_etat_processus).mutex_allocation)); |
|
|
pthread_mutex_unlock(&((*s_etat_processus).mutex_fork)); |
# ifndef SEMAPHORES_NOMMES |
pthread_mutex_destroy(&((*s_etat_processus).mutex_fork)); |
sem_post(&((*s_etat_processus).semaphore_fork); |
|
sem_destroy(&((*s_etat_processus).semaphore_fork); |
|
# else |
|
sem_post((*s_etat_processus).semaphore_fork); |
|
sem_destroy3((*s_etat_processus).semaphore_fork, getpid(), pthread_self()); |
|
# endif |
|
|
free((*s_etat_processus).localisation); |
free((*s_etat_processus).localisation); |
|
|