我想在运行的java应用程序中获取确切的执行点或运行代码行。
我正在研究一些容错方法并试图实现一些解决方案。我正在将Thread对象序列化为文件并强制关闭我的应用程序。我的目标是重新运行可序列化的Thread,而不是从“run”方法的开始,而是从序列化的那一行开始。
问题是:在正在运行的线程中,在调用“暂停”方法后,获取暂停代码的行。在此之后,我想实例化一个新的Thread类型并从该行运行。
任何人都知道我该怎么做?
答案 0 :(得分:1)
您需要的是可序列化的延续。但是,在我听说过的解决方案中,他们要么是;
更好的方法是拥有一个状态机,您可以在其中记录所有输入,因此您可以通过重播这些事件在任何时候重新创建应用程序。