问题描述
我无法对包含 <atomic>
的文件运行代码分析。发生这种情况时,代码开始构建(100% CPU 使用率),但随后无限期挂起 0% CPU 使用率。没有警告或错误,代码只是没有完成。
我目前使用的是 Visual Studio:15.9.33。我已经有这个问题大约 1.5 年了。重新安装操作系统没有帮助。
这是一个基于 xatomic.h 代码的简单代码片段,当复制粘贴到任何 cpp 文件时,会导致相同的行为,
#include <intrin0.h>
void code_analysis_hangs()
{
auto foo = _InterlockedCompareExchange8((char *)0,0);
}
void code_analasis_success()
{
_InterlockedCompareExchange8((char *)0,0);
}
char code_analysis_success2()
{
return _InterlockedCompareExchange8((char *)0,0);
}
同样的模式出现在所有 _InterlockedCompareExhange
函数以及 _InterlockedExchange
的 intrin.h
中。
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)