Algoritmo de Dekker

Tabela de Variáveis

VariávelValor
flag[ , ]
vez
Processo 1

0while (true)
1{
2    flag[i] = true;
3    while (flag[j] != false)
4    {
5        if (vez == j) {
6            flag[i] = false;
7            while (vez == j){ }
8            flag[i] = true;
9        }
10    }
11    secao_critica();
12    vez = j;
13    flag[i] = false;
14}
Processo 2

0while (true)
1{
2    flag[i] = true;
3    while (flag[j] != false)
4    {
5        if (vez == j) {
6            flag[i] = false;
7            while (vez == j){ }
8            flag[i] = true;
9        }
10    }
11    secao_critica();
12    vez = j;
13    flag[i] = false;
14}

Configurações