有没有办法减少控制台Java应用程序的启动时间?

vit*_*aut 8 java console performance startup

我注意到,在我的机器上,Java中最小控制台应用程序的启动时间略长于100毫秒,而等效的C应用程序则为1毫秒.虽然在大多数情况下这不是问题,但我想知道是否有办法减少这个时间,因为我需要编写一个将被执行多次的应用程序(比如在bash脚本中循环).

Pet*_*Mmm 3

您正在询问 Java 的“阿喀琉斯之踵”。确实没有什么关系。最后一个 Java 版本将是性能最高的,他们在这个问题上已经工作了很多年。

无论如何,多次运行同一个程序,您会发现第一次启动后,下一次启动要快得多。我认为这来自操作系统的缓存机制。

让它变得更好的唯一真正方法是让您的应用程序在后台运行,并可能通过 Web 服务与您的应用程序进行通信(这就是Servlet容器的全部内容)。

100ms 听起来并不算多,但在你的情况下可能是不可接受的。