是否有任何Java VM可以将其状态保存到文件然后重新加载该状态?

And*_*NER 17 java persistence virtual-machine

是否有任何Java VM可以将其状态保存到文件然后重新加载该状态?

如果是这样,哪些?

And*_*yle 11

另一个选项(在您的情况下可能相关或不相关)是在虚拟机内运行JVM(任何JVM).大多数虚拟机提供了存储和恢复状态的选项,因此您应该能够重新启动PC,在VM恢复时启动VM并让Java进程从原来的位置开始.

我在工作时使用VMWare Player进行IE测试,当我关闭并稍后重新打开它时,这就像上面说的那样工作.我通常不会在应用程序在VM中执行任何操作时执行此操作,但只要它们不访问任何外部资源(例如网络套接字),我希望它能够像VM永远不会关闭一样工作.


waq*_*qas 5

延续可能是您正在寻找的:

[...]第一类延续,它是一种结构,它使编程语言能够在任何点保存执行状态,并在程序的稍后时刻返回到该点.

Java至少有两个延续库:RIFE continuationjavaflow.我知道javaflow至少允许将状态序列化为磁盘:

一个Continuation可以被序列化,如果它捕获的所有对象也可序列化.换句话说,所有局部变量(包括所有this 对象)都需要标记为 Serializable.在此示例中,您需要将MyRunnable类标记为Serializable.序列化的延续可以发送到另一台机器或以后使用.- Javaflow教程