Apollo cyber 在orin平台编译优化等级崩溃问题排查 在英伟达orin 平台,即aarch64平台上编译apollo cyber,使用O1及以上优化会导致发布订阅消息的时候崩溃,经过排查是 CRoutine::GetCurrentRoutine() 会返回空指针 可能的原因X86和arm的 内存屏障实现不一样,可能是arm64乱序执行导致的,优化等级过高导致拿到的是脏数据 解决办法 GetCurrentRoutine在这个函数里 加上__sync_synchronize();