五、Bug——vs2015使用时候会突然中断“ContextSwitchDeadlock,其他信息: CLR 无法从 COM 上下文 0xece48820 转换为 COM 上下文 0xece486f8, 这种状态已持续 60 秒”

“托管调试助手“ContextSwitchDeadlock”在“D:worksoftoffice2010setupOffice15WINWORD.EXE”中检测到问题。
其他信息: CLR 无法从 COM 上下文 0xece48820 转换为 COM 上下文 0xece486f8,
这种状态已持续 60 秒。拥有目标上下文/单元的线程很有可能执行的是非泵式等待或者在不发送 Windows
消息的情况下处理一个运行时间非常长的操作。这种情况通常会影响到性能,甚至可能导致应用程序不响应或者使用的内存随时间不断累积。
要避免此问题,所有单线程单元(STA)线程都应使用泵式等待基元(如 CoWaitForMultipleHandles),并在运行时间很长的操作过程中定期发送消息。”

上面信息是本人再调试vs2015时候遇到的一个问题,程序明明没有跑完,但是就是报出这个中断,查了点资料,发现是vs2015设置的问题,不清楚为什么会这样,估计是一个保护机制把,

解决办法:

   点开菜单栏的 调试D)——窗口(w)——异常设置(x)——Managed Debug Assistants中的ContextSwitchDeadlock 取消选中即可

  亲测,有效!(暂时有效)

原文地址:https://www.cnblogs.com/zhangne/p/10857481.html