> Race condition, in terms of a computer programming, is a bug where two pieces of code cause an error if executed concurrently.
This article makes the common mistake of saying that a race condition is inherently a bug.
A race condition just means that observable program behaviour is dependent on the interleaving of two tasks. A race condition is only a bug if you don't want one of the possible interleavings.
You can often find great performance optimisations by working out how to work with race conditions rather than disallowing them.
This article makes the common mistake of saying that a race condition is inherently a bug.
A race condition just means that observable program behaviour is dependent on the interleaving of two tasks. A race condition is only a bug if you don't want one of the possible interleavings.
You can often find great performance optimisations by working out how to work with race conditions rather than disallowing them.