如何在后续的节点运行中重新使用V8 JIT优化?

我打算多次运行node somefile.js

据推测,每次我用Node执行这个文件,它都会JIT编译脚本并执行其他优化。

可悲的是:每次执行结束,都会忘记所有的工作。

有没有办法让我从之前的运行中保留V8已经产生的优化,并将它们应用于后续运行?

为v8编译的代码的保存/加载是复杂的,很less有合理的理由,因为比裸编译的代码要保存更多的信息,因为它需要花费很less的时间来优化和编译(好吧,还有热身,但总体时间在优化代码的执行之前很less那么大)。

所以在主线v8中没有你要求的东西。

但是,您可以向v8提供--always-opt选项,还可以在下次调用时强制特定function进行优化。 你只应该这样做,如果你的function是稳定的。