Java Socket API:偵測 WebSocket 關閉
在 Java 的 Socket API 中,確定連線是否已關閉可能具有挑戰性。即使對於遠端斷開的套接字,isConnected() 方法也會傳回 true,而儘管遠端關閉,isClosed() 仍然為 false。
傳統方法
許多開發人員訴諸於不斷編寫垃圾訊息發送到輸出流並檢查異常以檢測關閉。然而,這種方法效率低下,並且污染網路。
替代解決方案
不幸的是,沒有明確報告連接狀態的 API。相反,可以使用以下方法推斷套接字是否已關閉:
讀/寫操作:如果對等方已正常關閉連接:
連線中斷:如果連線中斷突然:
讀取逾時:如果對等方仍處於連線狀態但不活動:
以上是如何使用 Java 的 Socket API 可靠地偵測 WebSocket 連線關閉?的詳細內容。更多資訊請關注PHP中文網其他相關文章!