我正在開發c#中的Windows窗體。它工作正常,但是當我在調試模式下運行時,我可以看到即使在關閉表單後,visual studio也不會停止。即使在調試模式下關閉應用後,Visual Studio也不會停止
下面是一些screenshots-
和
也許我的應用程序沒有釋放任何資源。我該如何處理這個問題?如何知道哪些資源仍在使用?
我正在開發c#中的Windows窗體。它工作正常,但是當我在調試模式下運行時,我可以看到即使在關閉表單後,visual studio也不會停止。即使在調試模式下關閉應用後,Visual Studio也不會停止
下面是一些screenshots-
和
也許我的應用程序沒有釋放任何資源。我該如何處理這個問題?如何知道哪些資源仍在使用?
當我在過去看過這個問題時,這是因爲我的應用程序還沒有真正退出。這很可能是因爲你或者一個依賴項仍然有一個沒有停止的線程運行。您可以通過查看任務管理器並檢查yourapplication.exe
或yourapplication.vshost.exe
來判斷是否屬於這種情況。如果其中任何一個在任務管理器中打開,您可以將其殺死。
要解決此問題,請務必在所有主題上致電Abort()
!
我可以在任務管理器中看到'myForm.vshost.exe'。 –
非常感謝...現在已經解決了... –
請記住,您沒有解決問題,您最有可能隱藏它。在Visual Studio外運行該應用程序,並檢查該過程是否在關閉表單後終止。 – Odys
您可能想嘗試查看啓動任務管理器中的進程。如果應用程序啓動的第三方進程仍在運行,那麼可以爲您提供一些信息。
如果您使用ApplicationContext而不是表單作爲默認消息隊列,則會發生這種情況。如果是這樣,請考慮處理表單的表單關閉事件。
偉大的一點。它實際上是第二個沒有關閉的視圖。 – Mehrad
可能是這可以幫助http://stackoverflow.com/questions/10137394/debug-not-stopping-after-form-closing-in-visual-studio – ElectricRouge
使用「全部中斷」(「暫停」按鈕)並查看stacktrace/threads窗口以查看應用程序掛起的位置。 – sloth
什麼是您的應用程序退出模式?它是否設置爲顯式? – Silvermind