Visual Studio 2008 debug的時候發生鬱悶的錯誤ContextSwitchDeadlock was detected

異常信息:
CLR 沒法從 COM 上下文 0x645e18 轉換爲 COM 上下文 0x645f88,這種狀態已持續 60 秒。擁有目標上下文/單元的線程頗有可能執行的是非泵式等待或者在不發送 Windows 消息的狀況下處理一個運行時間很是長的操做。這種狀況一般會影響到性能,甚至可能致使應用程序不響應或者使用的內存隨時間不斷累積。要避免此問題,全部單線程單元(STA)線程都應使用泵式等待基元(如 CoWaitForMultipleHandles),並在運行時間很長的操做過程當中按期發送消息。
解決方法是 在Debug -> Exceptions -> Managed Debug Assistants裏 去掉ContextSwitchDeadlock一項前面的鉤。
自由、創新、研究、探索……
相關文章
相關標籤/搜索