有什么技术原因没有办法在热身之后保存某种JVM映像呢?假设我想在同一个平台上继续工作(所以任何JIT的东西都会继续工作)。
发布于 2015-10-16 07:31:25
根据您使用的JVM,已经有这样的功能了。JRockit是据报能够 to,对于“正常”的消费者JRE来说,存在一个9月145,但显然没有成功。
这里已经有一些关于这个主题的问题了,例如,试试这一个。
对于常规的Oracle来说,不存在这样的函数,您可以使用CodeCache让它尽早编译函数,或者让“热身”编译您的JVM。
持久化JVM缓存会带来一些风险,就像所有缓存的情况一样。当您的代码更改时,将需要对JIT状态进行失效和重新计算。如果这种情况不会发生,您将使用旧代码运行您的程序。这似乎是磁盘持久化缓存仅限于“专业”JVM的主要原因。此外,在启动时发生的JIT优化被认为足够快,足以在每次启动时重复它,从而消除了使用过时代码运行的风险。
https://stackoverflow.com/questions/33071714
复制相似问题