2013-03-17 43 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