保存并加载(Java)程序的状态

时间:2010-10-12 11:16:12

标签: java load save memory-dump

假设你的时间很短,并且你正在寻找一个具有某些功能的程序,你找到一个,除了缺少一个功能 - 它无法保存并加载其状态。是否有可能在操作系统级别或其他程序上实现这一点,可以完成所有操作,将其写入文件,然后在以后将其加载回内存?怎么样?

特别是对我而言,这是关于Java程序的,但欢迎提供有关此主题的更多信息。

4 个答案:

答案 0 :(得分:5)

一个(繁重而简单)的解决方案可能是使用VirtualPC并在虚拟操作系统上安装该程序。

答案 1 :(得分:1)

答案 2 :(得分:0)

你想做类似Windows的Hibernate功能吗?

这在Java中实现起来非常困难,因为您还必须编写JavaVM的状态。如果您在关闭程序结束时打开了文件。

我认为您可以做的最好的事情是使用Java序列化将需要恢复的对象写入磁盘。

答案 3 :(得分:0)

https://criu.org/Main_Page

查看CRIU项目

它在linux系统中提供了这种可能性。 Docker集成了它并提供了一个docker checkpoint命令,如果你在一个容器中运行你的程序,它将允许你在任何操作系统上执行此操作。