1968
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
non-critical section non-critical section
set v0 to true set v1 to true
repeat repeat
if v equals P1 if v equals P0
set v0 to false set v1 to false
wait until v equals P0 wait until v equals P1
set v0 to true set v1 to true
fi fi
until v1 equals false until v0 equals false
critical section using r critical section using r
set v0 to false set v1 to false
set v to P1 set v to P0
El algoritmo de Dekker resuelve el problema de exclusión mutua en el caso de dos procesos (con memoria común).
Existen algoritmos que resuelven el problema para n procesos, p.ej., el algoritmo de Lambert (algoritmo de la panadería), o el algoritmo de Peterson.