0
我有一個Windows服務使用WCF與gui進行通信。不幸的是,當我想從GUI重新啓動服務(重裝配置),我得到的消息:如何等待WCF釋放端口?
已經有上IP端點的聽衆0.0.0.0:1111
我重新啓動使用休耕代碼服務:
if (sc.Status == ServiceControllerStatus.Running)
{
sc.Stop();
sc.WaitForStatus(ServiceControllerStatus.Stopped);
sc.Start();
}
的問題是,服務控制器已經在停止狀態和WCF仍然沒有釋放端口。我該如何等待這種情況發生?
港口是否在TIME_WAIT? – Mark 2009-08-17 17:14:44
這是一個tcp連接,所以可能答案是肯定的。該端口不會被阻塞很長時間 - 僅需幾秒鐘,我就可以再次運行該服務)。 – kyrisu 2009-08-17 17:58:17
你在OnStop方法中做了什麼?請顯示代碼。 – 2009-08-17 18:51:30