Multithreaded and Synchronization Terminology

This is not the first time in this book that we have run into synchronization terminology. We have already used terms such as synchronization, serialization, critical sections, race condition, and locks. We never really explained them, and it is time to step back and clarify the terminology.[1] The first issue is presenting the problem: What is the problem that all that terminology is trying to address?

[1] It does not help at all that Java has overloaded the term “serialization” to mean something entirely different and unrelated to synchronization.

Take a simple code statement such as

x = x + 1;

If two threads execute this statement, we expect the resulting value stored in x to be x+2. Any other ...

Get Efficient C++ Performance Programming Techniques now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.