Al final obtenemos con el quinto intento el algoritmo de Dekker:
Initially: v0 is equal false
v1 is equal false
v is equal P0 o P1
P0 P1
a: loop loop
b: set v0 to true set v1 to true
c: loop loop
d: if v1 equals false exit if v0 equals false exit
e: if v equals P1 if v equals P0
f: set v0 to false set v1 to false
g: wait until v equals P0 wait until v equals P1
h: set v0 to true set v1 to true
i: fi fi
j: endloop endloop
k: critical section critical section
l: set v0 to false set v1 to false
m: set v to P1 set v to P0
n: non-critical section non-critical section
o: endloop endloop
El algoritmo de Dekker resuelve el problema de exclusión mutua en el caso de dos procesos (con memoria común).