Dekker's algorithmDekker's algorithm
is a concurrent programming algorithm
for mutual exclusion
that allows two processes to share a single-use resource without conflict, using only shared memory for communication.
It avoids the strict alternation of a naive turn-taking algorithm, and was one of the first mutual exclusion algorithms to be invented.