你的 static 局部变量正在被一把你看不见的 mutex 保护——从 __cxa_guard 到 double-check locking,拆解静态初始化的 3 层线程安全机制

📅 2026/7/7 18:13:36 👁️ 阅读次数 📝 编程学习
你的 static 局部变量正在被一把你看不见的 mutex 保护——从 __cxa_guard 到 double-check locking,拆解静态初始化的 3 层线程安全机制

一行代码,二十三条指令

把下面这段代码丢进 Compiler Explorer,选 GCC 14.2,开 -O2:

structConfig{Config(){/* 从文件加载配置 */}inttimeout=30;};Config