【发布时间】:2017-09-07 18:31:07
【问题描述】:
我的应用程序终止时,IDE 有时会中断。
发生这种情况时,调用堆栈为空,并且线程列表显示了一些不会向我透露任何信息的线程。
当我选择“调试器”-“步入”时,IDE 退出/终端看似正常,所以我不知道如何进一步调查导致中断的原因。
单击“检查正在运行的任务”不会显示任何任务。 单击“继续执行”似乎可以正常退出调试。 单击“显示诊断工具”显示事件“执行时停止:执行时停止”,它不再告诉我了。
附上截图。
如何调查导致此中断的原因?
编辑: 我已经尝试过一位论坛成员的建议,但我认为这不会产生任何对我有帮助的东西。这是截图:
【问题讨论】:
-
请查看任务管理器,检查调试工具/本项目相关的某些进程是否没有关闭,您可以关闭它们,然后查看调试结果,或者重启您的机器,重新打开项目,再次调试。确保并在构建下运行“干净”,否则您可能会遇到某些编译错误或异常。
-
@JackZhai-MSFT 请详细说明我应该做什么。
-
看起来很不健康。终结器线程不再运行,但仍有三个线程运行托管代码。不好。 Crystal ball 说您注意到程序终止时的两秒超时,这表明终结器线程已死锁。您有充分的理由联系您的组件供应商的支持,Essential Objects 的业务是提供可能导致终结器线程死锁的风险代码。
-
当我遇到 类似 问题时,我的问题原来是线程方法上被遗忘的断点。在运行您的应用程序之前禁用所有断点可以证明或反驳这个理论。不记得我的断点是否在引用的项目中,但肯定是相关的。
标签: vb.net debugging ide visual-studio-2017