我有客戶端代碼,它使用UDP和recvfrom()
從服務器獲取響應。這在服務器開啓時工作正常,但是一旦我停止服務器,我的客戶端程序掛起;我懷疑recvfrom()正在等待來自服務器的響應。Recvfrom()掛起 - 服務器關閉時如何處理此問題
如果服務器和客戶端都安裝在同一個系統上,他們在服務器關閉時從recvfrom()
得到錯誤,但是當服務器和客戶端在不同的系統上時,客戶端在recvfrom()處掛起,自OFF以來服務器沒有響應。
請有人可以給我想法我怎麼能處理這種情況,也許一個定時器信號interuption可以解決這個問題..任何人都可以拋出一些光?
我使用Visual Studio 2005
謝謝,非阻塞模式爲我工作 –
供未來用戶使用。有關如何製作套接字非阻塞的示例,請參閱以下ioctlsocket函數的MSDN文檔:http://msdn.microsoft.com/en-us/library/windows/desktop/ms738573%28v=vs.85%29。 ASPX – Ian