最佳答案
C + + 17增加了 ABC0和 std::hardware_constructive_interference_size
。首先,我认为它只是一种获取 L1缓存线大小的可移植方法,但这种想法过于简单化了。
问题:
static constexpr
。如果您构建一个二进制文件并在其他具有不同缓存行大小的计算机上执行它,这不是一个问题吗?当您不确定代码将在哪台机器上运行时,它如何防止在该场景中出现错误共享?