0

我在 NET 3.5 中有一个 WPF MVVM 桌面应用程序。此应用程序在其主窗口中有一个组合框。此 comobobx 绑定到视图模型属性。首次启动应用程序时,将填充此组合框。当从组合框中选择一个项目时,wpf 数据网格会加载数据。然后用户可以对加载到数据网格中的数据进行一些操作。为了执行特定操作,用户从数据网格中选择一行,然后单击执行所需操作的 wpf 按钮。此操作由后台工作人员完成,完成后组合框会刷新。它被刷新是因为组合框中的每个项目都有一个关联的计数器,需要重新计算,然后在操作完成后在组合框中刷新。

我的问题如下:一旦操作完成,如果用户单击组合框,它会冻结并且在几秒钟内没有响应,大约 10 秒,在那几秒钟之后,组合框响应。它只发生在生产环境中的计算机上。在其他计算机中,它不会发生。我无法重现它。

那么我可以使用任何 .NET 调试器来检测死锁、线程中的异常行为、锁等吗?

我正在尝试使用 MDbg.exe,但是从 MDbg 提示控制台,当我尝试附加到进程(应用程序正在运行)时,应用程序冻结...

从 MDbg 提示控制台,我使用以下命令附加到进程:

a PID

此外,从 MDbg 提示控制台,我尝试使用以下命令加载 SOS.dll,但它显示未找到扩展:

load sos clr

我不确定我是否正确使用了 MDbg,我之前没有使用过它。

4

1 回答 1

0

调试时点击工具栏上的暂停按钮,它将在当前行中断。

它应该让您了解导致问题的原因

于 2018-05-08T11:10:58.723 回答