当前位置: 首页 > 知识库问答 >
问题:

InetAddress.getLocalHost() 运行缓慢(30 秒)

程成天
2023-03-14

使用以下代码:

try {
  System.out.println(new Date());
  InetAddress hostName = InetAddress.getLocalHost();
  System.out.println(new Date());
} catch (UnknownHostException e) {
  e.printStackTrace();
}

我得到这个输出:

Thu Oct 22 20:58:22 BST 2015
Thu Oct 22 20:58:52 BST 2015

换句话说,执行需要30秒。机器是2015 Macbook Pro,Java 1.8.0_60。

为什么这需要这么长时间?

共有3个答案

辛意智
2023-03-14

上面的答案适用于我的Mac,您可以像这样尝试:

步骤1,从thoeni/inetTester下载inetTester.jar

步骤2,在Mac上运行它。这是我的Mac上的结果:

$ java -jar ./inetTester.jar
Calling the hostname resolution method...
Method called, hostname MacBook-Pro.local, elapsed time: 5009 (ms)

运行测试需要5秒钟,它显示了我的mac的主机名。

步骤 3,修改 /etc/主机:

127.0.0.1   MacBook-Pro.local
::1         MacBook-Pro.local

主机是步骤2中显示的内容。在此之后,再次运行测试:

$ java -jar ./inetTester.jar
Calling the hostname resolution method...
Method called, hostname MacBook-Pro.local, elapsed time: 6 (ms)

是的,它只有6毫秒。

海嘉赐
2023-03-14

这个问题出现在使用Java8的MacOS Sierra上,更新等于或大于60(jdk1.8.0_60.jdk、jdk2.8.1_77.jdk等)。

解决方案可以在这里找到:https://github.com/thoeni/inetTester.

这是我的 /etc/hosts 文件的内容:

127.0.0.1   localhost mac.local
::1         localhost mac.local

在我的情况下,mac是我的计算机名。

印劲
2023-03-14

这个问题可以通过将以下内容添加到 /etc/hosts 来解决(假设 hostname 命令的输出是 my-macbook

127.0.0.1   my-macbook
::1         my-macbook

这会将时间返回到更合适的位置(

 类似资料:
  • 问题内容: (重要)编辑3: 单独运行testajax2.php而 不是 Ajax。持续时间大致相同,为1.02-1.03秒。所以我想这意味着问题出在PHP- MySQL或XAMPP中? 当我通过phpMyAdmin查询运行它时,结果如下:显示第0-29行(总计约50行。查询耗时 0.0015秒 )。看来问题根本不在于Ajax,而可能在于PHP。我怎样才能解决这个问题?(我也刚刚编辑了问题标题。)

  • 我试图用映射器和还原器运行一个作业,但映射器运行得很慢… 如果对于相同的输入,我禁用精简器,映射器在3分钟内完成,而对于映射器-精简器作业,即使在30分钟结束时,映射器仍未完成。 此外,Jobtracker日志还填充有: 有人能说出哪里可能出了问题吗

  • 问题内容: 我有一个Java程序,可以对sql服务器数据库运行一堆查询。其中第一个查询视图返回大约750k条记录。我可以通过sql server management studio运行查询,大约30秒后即可得到结果。但是,我从昨晚开始运行该程序。当我今天早上检查它时,大约15小时后,该查询仍未将结果返回给Java程序。 我可以访问数据库以执行几乎任何我想做的事情,但是我真的不确定如何开始调试它。人

  • 我在pyplay上做了一个Tamagotchi项目,在这个早期阶段,程序运行非常缓慢。你对原因有什么提示吗?还有,有没有办法加快速度? 到目前为止,这是我的代码:

  • 问题内容: 有没有一种方法可以缓慢地运行使用量角器编写的Angular E2E测试,以便我可以观察发生了什么? 问题答案: 下面是我的解决方案。因此,基本上,我为当前的控制流功能创建了一个装饰器,该装饰器现在另外在每个已排队的操作之前排队100ms的延迟。 这需要在调用任何测试之前运行(外部块)

  • 问题内容: 我下面有一段包含循环的代码块: 其中每个对象包含4个值的of 是。 我正在Rational Application Developer版本8和Apache POI 3.8中运行它。 我认为大约有5500个元素的价值很小。 但是,此代码块需要花费一个多小时才能运行。 我认为这有问题。5500个元素(每个元素包含4个元素)应该运行得很快,并且应该是几分钟的问题。可能是什么原因?有没有办法使