标题:Nonblocking synchronization can yield astonishing results in terms of scalability and realtime response, but at the expense of verification state space.
摘要:Mathieu Desnoyers, EfficiOS So you've decided to use a nonblocking data structure, and now you need to be certain of its correctness. How can this be achieved? When a multithreaded program is too slow because of a frequently acquired mutex, the programmer's typical reaction is to question whether this mutual exclusion is indeed required. This doubt becomes even more pronounced if the mutex protects accesses to only a single variable performed using a single instruction at every site. Removing synchronization improves performance, but can it be done without impairing program correctness?.