Differences

This shows you the differences between two versions of the page.

Link to this comparison view

app:laboratoare:04 [2024/10/29 02:44]
alexandru.bala [Variabile condiție]
app:laboratoare:04 [2025/11/12 05:03] (current)
alexandru.bala [Variabile condiție]
Line 178: Line 178:
 void *f(void *arg) void *f(void *arg)
 { {
-    ​// facem lock pe mutex+        ​// facem lock pe mutex
  pthread_mutex_lock(&​mutex);​  pthread_mutex_lock(&​mutex);​
-    ​// zona critica+        ​// zona critica
  a += 2;  a += 2;
-    ​// facem unlock pe mutex+        ​// facem unlock pe mutex
  pthread_mutex_unlock(&​mutex);​  pthread_mutex_unlock(&​mutex);​
  
Line 194: Line 194:
  int arguments[NUM_THREADS];​  int arguments[NUM_THREADS];​
  
-    ​// cream mutexul+        ​// creăm mutex-ul
  pthread_mutex_init(&​mutex,​ NULL);  pthread_mutex_init(&​mutex,​ NULL);
  
Line 261: Line 261:
  for (i = 0; i < NUM_THREADS;​ i++) {  for (i = 0; i < NUM_THREADS;​ i++) {
  pthread_join(threads[i],​ &​status);​  pthread_join(threads[i],​ &​status);​
- }+ 
  pthread_barrier_destroy(&​barrier);​  pthread_barrier_destroy(&​barrier);​
 +
  return 0;  return 0;
 } }
Line 358: Line 360:
  
     pthread_mutex_init (&​mutex,​ NULL);     pthread_mutex_init (&​mutex,​ NULL);
- 
     sem_init (&​full_sem,​ 0, 0);     sem_init (&​full_sem,​ 0, 0);
     sem_init (&​empty_sem,​ 0, 3);     sem_init (&​empty_sem,​ 0, 3);
Line 376: Line 377:
     }     }
  
-    pthread_mutex_destroy(&​mutex);​+    ​sem_destroy (&​empty_sem);​ 
 +    sem_destroy (&​full_sem);​ 
 +    ​pthread_mutex_destroy (&​mutex);​
  
     return 0;     return 0;
Line 490: Line 493:
  }  }
  
 +        pthread_cond_destroy (&​empty_cond,​ NULL);
 + pthread_cond_destroy (&​full_cond,​ NULL);
  pthread_mutex_destroy(&​mutex);​  pthread_mutex_destroy(&​mutex);​
  
app/laboratoare/04.1730162662.txt.gz · Last modified: 2024/10/29 02:44 by alexandru.bala
CC Attribution-Share Alike 3.0 Unported
www.chimeric.de Valid CSS Driven by DokuWiki do yourself a favour and use a real browser - get firefox!! Recent changes RSS feed Valid XHTML 1.0