1
我有一個Windows服務運行一個單獨的後臺線程。在線程內部,它啓動一個使用TcpListener監聽客戶端的TCP服務器。如何使用TcpListener阻止呼叫終止Windows服務
我想知道我可以關閉該服務勇退的時候有一個阻塞讀,像這樣:
listener.AcceptTcpClient();
我發現,顯然是一個窗口服務,可以中止任何其他線程,只要因爲它們被設置爲後臺線程,但如果其中一個線程被阻塞呢?這是否有所作爲?如果是這樣,處理這種情況的最佳方法是什麼?
如果我沒有調用listener.Close()會怎麼樣?這不好嗎? – jaffa
@jaffa預期的行爲明智 - 仍然很好。我的答案的最後兩行解釋了這一點。 – Anri