2009-11-19 56 views
0

我有一個應用程序偵聽特定的RPC端口號10001與其他設備(硬件)使用套接字編程連接。重新打開相同的套接字供重用C++

同時,硬件設備將試圖建立連接到我的IP地址和相同的端口號10001

所以這樣我的應用程序和硬件連接。現在假定我從我的機器斷開網絡電纜,我的應用程序仍然會監聽端口號10001,但它不會收到任何連接。

現在,如果我再次重新連接網絡,那麼是否可以重複使用之前用於硬件通信的相同套接字。

我讓人困惑

感謝

回答

1

一旦建立的套接字已斷開,不能重複使用。您必須關閉舊的套接字並分配一個新套接字。但是,在收聽端拔出網線對於現有的收聽插座不能接受新的連接,但是一旦電纜被放回去,就不會有任何影響。如果它無法做到這一點,那麼你的操作系統的套接字堆棧可能有問題。

+0

即使我也有同樣的感受。我的代碼可能還有其他一些錯誤,但我可以看到,我的應用程序正在監聽特定端口號的連接,而不使用網絡電纜 – ckv 2009-11-23 08:58:39