2013-03-17 65 views
2

reading here, thatWindows會干擾Java的Socket.setSOTimeout嗎?

在連接時,JVM(Java虛擬機)嘗試解析 主機名IP /端口。 Windows嘗試在UDP(用戶 數據報協議)端口137上嘗試一次netbios ns查詢,超時時間爲1.5秒,忽略任何 ICMP(互聯網控制消息協議)端口不可達數據包,並且 重複這兩次,最多添加一個值4.5秒。 I 建議將關鍵主機名放入您的HOSTS文件中以確保 可以快速解決它們。另一種可能是完全關閉NETBIOS 並在您的LAN(局域網)上運行純TCP/IP。

這是目前的問題嗎?因爲我正在做一個心跳傳感器,我很好奇。

回答

2

您的引用不是一個規範性參考,只是另一個愛好網站,在這種情況下,它是錯誤的。這與setSoTimeout()沒有任何關係。他在名稱解析時間,連接時間和讀取時間之間完全混淆。 setSoTimeout()設置一個讀取超時值,並且不受他描述的惡劣影響,無論是準確的還是其他的,這在連接時不會發生,因爲他說:它們會在名稱解析時發生。

在這個網站上,甚至是在那個網頁上發現的唯一混淆,讓我向你保證。我在十年前向他介紹了這個頁面上的幾個錯誤,以及其他很多錯誤,所有這些錯誤至今仍未修正,這讓您瞭解該網站的準確性,最新性和內容審查機制。他唯一的迴應是爲我添加一句粗魯的評論。作爲一個同行評議機制而不夠令人信服。

堅持權威來源。

+0

瞭解 - 非常感謝! – Coffee 2013-03-17 12:18:01