跳转至

2023

C++内存模型和原子类型操作

聊聊C++并发编程中比较高级的无锁编程。

内存模型基础

对象和内存位置

  1. 每一个变量都是一个对象,包括作为其成员变量的对象。
  2. 每个对象至少占有一个内存位置。
  3. 基本类型都有确定的内存位置(无论类型大小如何,即使他们是相邻的,或是数组的一部分)。
  4. 相邻位域是相同内存中的一部分。