References
The C++ abstract machine is a portable abstraction of your operating system, kernel and hardware.
The abstract machine is the intermediary between your C++ program and the system that it is run on.
Synchronizes with
int value; std::atomic<bool> ready; void thread1() { value = 2; // non-atomic store ready = true; } void thread2() { if (ready) { // synchronizes-with relationship assert(value == 2); // never fails } }
C++ abstract machine / execution model
* https://www.youtube.com/watch?v=FJIn1YhPJJc
By technology