草庐IT

c++ - 如何避免 Helgrind 的误报?

我的线程同步“风格”似乎正在摆脱helgrind。这是一个重现问题的简单程序:#include#include#includeintmain(){std::atomicisReady(false);inti=1;std::threadt([&isReady,&i](){i=2;isReady=true;});while(!isReady)std::this_thread::yield();i=3;t.join();std::cout据我所知,上面的程序是一个格式良好的程序。但是,当我使用以下命令运行helgrind时出现错误:valgrind--tool=helgrind./a.out