Programming Concurrent Systems
Chapter 3, in Edsger Wybe Dijkstra: His Life, Work, and Legacy
Published by ACM | 2022
ISBN: ISBN: 978-1-4503-9774-2
Tribute volume for Edsger Dijkstra
Concurrent programs are nondeterministic, which makes them difficult to reason about and to debug. But today computing systems have lots of processors, so concurrent programs are unavoidable. Atomicity makes it possible to reason as though most of the program is sequential, with locks and conditions allowing a number of sequential processes to communicate safely using ideas introduced by Dijkstra in the 1960s.