2012-09-04 76 views
2

我有一個小而簡單的winforms,它調用一個類,並將它的結果寫入到Visual Studio控制檯窗口中的一個控制檯 - 在VSs Debug菜單中找到的稱爲Output的控制檯。調試> Windows>輸出這個控制檯消息是什麼意思?

某些消息是在控制檯上自動生成的,我有興趣瞭解它們的含義;在winforms寫入控制檯的信息之後立即出現以下內容 - 這是執行處理的線程嗎?

The thread '<No Name>' (0x2280) has exited with code 0 (0x0).

的我在VS看到屏幕截圖...

enter image description here

+0

這很可能只是一個ThreadPool線程正在放棄。 – Nick

回答

3

該消息意味着一個線程已經結束,但這不應該是一個驚喜。

我想你想知道爲什麼線程在你的應用程序中結束,即使你沒有在你的代碼中創建任何新的線程。當使用像Windows Forms這樣的框架時,框架將使用線程來執行一些額外的工作。這些線程通常來自.NET線程池。結束之前線程已經做了什麼需要更多研究。

+0

是否會讓我的程序的主題名稱非常複雜......以便我可以看到一個名稱而不是''來證明這一切對我自己? – whytheq

+1

@whytheq:你的程序有很多線程。但是,當您談論「我的程序的線程」時,您可能會引用主線程或UI線程。根據退出該線程的應用程序的配置,將終止該進程。你會注意到,你並不需要給這個線程一個名字。要給線程一個名字,你需要在代碼中創建線程。那些在輸出窗口終止的匿名線程肯定是完成了一些工作的線程池線程。 –

0
關於 Thread消息

,與code 0存在Thread已經成功地完成了所有手續。任何其他代碼將指示unhandeled exceptions

headfirstPage204Farmer.vshost.exe消息是Visual studio用於運行該應用程序

0

與代碼0退出可執行通常意味着成功地完成(沒有錯誤)。

0

這意味着有一個線程,正確執行並返回0。 就是這樣。

1

它顯示當前用於運行應用程序的線程以及運行調試器的線程。在應用程序運行時,調試器可以產生新線程以及結束線程。當你看到代碼爲0的線程退出時,這意味着實現了一個沒有錯誤的正常退出。

0

代碼0很好,它的調試信息表明進程如期結束,沒有任何例外。

相關問題