Visual Studio 2010挂起跟踪点

Man*_*utz 10 c# debugging wpf visual-studio

问题:

每当我尝试在调试器中断开或设置跟踪点时,我们的应用程序和visual studio都会完全冻结.分离调试器后,应用程序继续.

这个问题可能与WPF有关.我们已将WinForm应用程序迁移到WPF.从那以后出现这个问题.但我无法找到导致问题的代码的特定部分.我已经回滚了数百次提交但没有成功.

它也可能与UI线程有关.如果断点设置在远离UI逻辑的某个地方,则应用程序不会冻结,也不会像在UI线程中那样经常冻结.

[ 编辑: ]我在Visual Studio 2010中使用Windows 7. 64位

[ 更新: ]

当Visual Studio挂起,并且我在断点显示之前尝试分离时,消息"无法从一个或多个进程中分离.所有未完成的功能都未完成".但是我已经在调试选项中禁用了所有func评估.我认为我的问题是由无法完成的func_evaluation或者超时的func_evaluation引起的.

有没有办法看到哪个func_evaluation视觉工作室挂起?

例:

class SomeUiViewPresenterExample
{
   private Timer m_Timer;

public void Init()
{
    m_Timer = new Timer();
    m_Timer.Elapsed += ElapsedFoo();
    m_Timer.AutoReset = false;
    m_Timer.Interval = 200;
}

private void ElapsedFoo(object sender, ElapsedEventArgs elapsedEventArgs)
{
    // there is no code inside this method
    // On the next line a trace point with "---> ElapsedFoo called" will freeze the debugger
}
Run Code Online (Sandbox Code Playgroud)

我已经尝试过:(没有成功)

  • 启用/禁用主机进程
  • 试图调试x86和x64进程
  • 推出带/ SafeMode的visual studio
  • NGEN更新
  • 在调试选项中禁用"属性评估和其他隐式函数调用"
  • 禁用符号服务器
  • 禁用符号加载
  • 删除了WPF字体缓存
  • 使用'DebuggerDisplay("某些没有表达式的文本")标记了几个UI元素

(票证Microsoft Connect)

可能相关的问题:

因为我们的应用程序使用.NET Remoting与另一个进程通信,所以我的问题与类似.我已将所有注册事项放在自己的任务中的远程事件中,但没有成功.

来自调试的visual studio的调试器输出:

我已将调试器附加到visual studio并观察到一些例外,(80010005)

但我不知道他们是否与我的问题有关:

(18d8.1708): C++ EH exception - code e06d7363 (first chance)
(18d8.1708): C++ EH exception - code e06d7363 (first chance)
..... // snip
(18d8.18dc): **Unknown exception - code 80010005 (first chance)
..... // 20 seconds freeze until breakpoint hit in IDE

(18d8.18dc): Unknown exception - code 80010005 (first chance)
(18d8.18dc): C++ EH exception - code e06d7363 (first chance)
ModLoad: 365f0000 36665000 C:\Program Files (x86)\Microsoft Visual Studio 10.0\Common7\Packages\Debugger\mcee.dll

// after continue execution debugger and debugged process freezes forever

(18d8.18dc): Unknown exception - code 80010005 (first chance)
ModLoad: 00000000`02b90000 00000000`02c1c000 C:\Windows\SysWOW64\UIAutomationCore.dll
(18d8.1a8c): CLR exception - code e0434352 (first chance)
(18d8.1a8c): CLR exception - code e0434352 (first chance)
(18d8.1a8c): CLR exception - code e0434352 (first chance)
(18d8.1a8c): CLR exception - code e0434352 (first chance)
(18d8.1a8c): CLR exception - code e0434352 (first chance)
(18d8.1a8c): CLR exception - code e0434352 (first chance)
(18d8.1a8c): CLR exception - code e0434352 (first chance)
(18d8.1a8c): CLR exception - code e0434352 (first chance)
Run Code Online (Sandbox Code Playgroud)

感谢您提出任何想法或提示

曼努埃尔

Man*_*utz 1

感谢您的提示。最后我安装了 VS 2012,调试器现在表现正常。Visual Studio 2010 调试器中似乎确实存在错误/性能问题。