怕孤单冰棍

文章
6
资源
0
加入时间
3年1月8天

调试时设置断点后出现 此处无源代码可显示

现象:当前在原代码处设置断点,却在执行到此断点时“此处无源代码可显示”。原因:多线程环境,如果你的一个while循环在不停读一个变量,如果在本先线程内,两次运行到读这个变量之间的代码没有写这个变量,代码在编译时会被优化成直接从寄存器读取而不是内存。如果其他线程会改写此变量,当前线程却会一直读入未改写的变量值。由于是优化成读寄存器了,当前的代码处就无法设置断点了。奇怪的是单线程环境不会出错,照理