我在运行调试器时 UI 阻塞的 .NET Forms 应用程序有一个难以诊断的问题。
该块是随机的,并且在被阻止时,如果我单击调试器中的暂停按钮,它实际上并没有完成暂停,直到块释放。
我已经通过运行它在调试器之外尝试了该程序,它不会阻塞并且运行良好。
我尝试使用探查器(蚂蚁)来查找块,但在这种状态下它也不会阻止,探查器报告也没有显示任何值得注意的内容。
应用程序运行后台线程来处理套接字连接超时(使用 Threading.Timer 这些不与 UI 通信)。
网络操作正在使用BeginXXX
调用。
我很难找到这个问题,因为它不会发生在用户身上,但是当这些块似乎发生时,很难尝试调试程序的其他方面。
UI 的主要焦点是一个用户控件,显示一个机器网格,它们的连接状态POSTerminal
从 UI 线程的 State 对象 () 中检索,
有什么我可以看的可能找到调试器/UI阻塞之间的连接吗?