Properly init the semaphore in the readers/writers code.
[TD_SE.git] / lecteursredacteurs / lecteursredacteurs.c
index 2c485d7d072390e1005292b7e70bba234f18a46b..e13f115f023cb1eea67e82bb6d71997941c7fbb5 100644 (file)
@@ -37,7 +37,7 @@ static void *redacteur(void *arg)
                // modifier les donnĂ©es de la base
                db++;
                printf("redacteur bd=%d\n", db);
-               sleep(2);
+               sleep(1);
                sem_post(&redact);
        }
        return NULL;
@@ -46,8 +46,8 @@ static void *redacteur(void *arg)
 int main()
 {
        pthread_t t1, t2;
-       sem_init(&mutex, 0, 0);
-       sem_init(&redact, 0, 0);
+       sem_init(&mutex, 0, 1);
+       sem_init(&redact, 0, 1);
        pthread_create(&t1, NULL, redacteur, NULL);
        pthread_create(&t2, NULL, lecteur, NULL);
        pthread_join(t1, NULL);