VS 2013调试期间的奇怪行为
本文关键字:2013 调试 VS | 更新日期: 2023-09-27 18:03:20
在Visual studio 2013调试期间,对于c#项目,出现在行号旁边的黄色箭头不会移动到下一行。我每一行都要按两次F10。当有一个方法调用时,我按F11,它会转到该方法,然后在按F10时跳转回调用部分,我必须再次按F10第二次,然后它才会回到被调用方法的下一行。
怎么回事?我不小心打开/关闭一些设置在VS?
请帮忙,因为这引起了很多挫折。
问候。
似乎你正在调试一个多线程应用程序,它多次访问相同的方法,正如我在评论中所说的。
检查你的Threads
窗口,你会看到超过1个线程正在访问被调用的方法,这就是为什么你不得不多次按下F10,以及为什么F11返回到被调用的方法。
在您的Threads
窗口中,您可以通过右键单击它们并按"冻结"来冻结线程。
正如Yuval的回答所建议的那样,这个问题似乎是由于多个线程而发生的。
你很幸运,测试起来很简单。你所要做的就是:
对于每个线程,在创建时分配一个唯一的名称。这可以在创建后通过如下代码完成:
if(String.IsNullOrWhiteSpace(Thread.CurrentThread.Name))
{
Thread.CurrentThread.Name = "MyThread_" + id++;
}
别忘了加上:
using System.Threading
在Watch
窗口中添加System.Threading.Thread.CurrentThread.Name
的记录。
现在剩下的就是检查每次按下F10