Advertisement
Guest User

Untitled

a guest
May 25th, 2019
82
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C 0.67 KB | None | 0 0
  1.   int tipo_cliente = *((int *)tipo);
  2.   int coda_clienti = 0;
  3.   printf("%d",tipo_cliente);
  4.   pthread_mutex_lock(&lock); //blocco il check del semaforo da parte di altri processi
  5.   sem_getvalue(&kart, &coda_clienti);
  6.   if(coda_clienti < -20)
  7.   {
  8.     printf("Piu' di 20 clienti in coda, abbandono pista.\n");
  9.     pthread_exit(NULL);
  10.   }
  11.   pthread_mutex_unlock(&lock);//sblocco
  12.   sem_wait(&kart);
  13.   if(tipo_cliente == 0)
  14.     sem_wait(&istruttore);
  15.   printf("entrato in pista\n");
  16.   sleep(rand()%10); //aspetta per un numero rand di secondi MAX 10s
  17.   if(tipo_cliente == 1)
  18.     sem_post(&istruttore);
  19.   sem_post(&kart);
  20.   printf("uscito dalla pista\n");
  21.   pthread_exit(NULL);
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement