使用JRE6(Windows XP上的SUN VM),getLocalhost()有时会冻结。
有趣的是,如果在Eclipse的调试器中,它不会冻结。我使用旧式println将其缩小为单个getLocalhost()调用。我可以看到代码没有什么特别之处。
还有其他人看过这个问题吗?
答案 0 :(得分:1)
你没有指定冻结的时间......或者你的意思是完全冻结,永不返回。
如果本地主机名(从JNI调用返回)不是“localhost”,则使用InetAddress.getAddressFromNameService()解析本地名称的IP地址。这是一个DNS调用,可以设想阻止查找和访问名称服务器的时间不确定。
答案 1 :(得分:0)
使用wireshark查看您的DNS是否需要很长时间才能响应。