Skip to content

Commit 5869d4f

Browse files
authored
Correction du pseudocode pour valeur non-signée
1 parent a79a00f commit 5869d4f

1 file changed

Lines changed: 10 additions & 7 deletions

File tree

Theorie/Threads/coordination.rst

Lines changed: 10 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -59,12 +59,15 @@ Les deux principales fonctions de manipulation des sémaphores sont `sem_wait(3)
5959
6060
int sem_wait(semaphore *s)
6161
{
62-
s->val=s->val-1;
63-
if(s->val<0)
64-
{
65-
// Place this thread in s.queue;
66-
// This thread is blocked;
67-
}
62+
if(s->val>0)
63+
{
64+
s->val=s->val-1;
65+
}
66+
if(s->val==0)
67+
{
68+
// Place this thread in s.queue;
69+
// This thread is blocked;
70+
}
6871
}
6972
7073
La fonction `sem_post(3)`_ quant à elle peut schématiquement s'implémenter comme suit :
@@ -75,7 +78,7 @@ La fonction `sem_post(3)`_ quant à elle peut schématiquement s'implémenter co
7578
int sem_post(semaphore *s)
7679
{
7780
s->val=s->val+1;
78-
if(s.val<=0)
81+
if(s.val==0)
7982
{
8083
// Remove one thread T from s.queue;
8184
// Mark thread T as ready to run;

0 commit comments

Comments
 (0)