【发布时间】:2014-07-10 04:30:43
【问题描述】:
是否可以在执行期间保存调用堆栈的状态,然后将堆栈恢复到该状态,在最顶层的方法调用处重新开始?
【问题讨论】:
-
你为什么要这样做?
-
我正在执行一个可以被中断的算法,因为它意识到它所依赖的一些早期信息现在已经过时了。我不想从一开始就重新启动,而是从它使用过时信息的方法重新启动。我只关心这个关于恢复调用堆栈的问题,我并不担心这会如何影响堆。
-
“恢复堆栈状态”是什么意思?一旦你的程序继续执行,之前的堆栈就不再相关了。
-
通过“在最顶层的方法调用处重新启动”,你想做什么与再次调用该方法有什么不同?
-
我看过你的其他问题,似乎很多问题都带有一种黑客攻击的底色。我建议您改用更多“标准”方式。您将生成更好的可维护代码。你也会学到一些更持久的东西。您似乎正在学习的黑客技巧并不持久,它们与具体技术有关。一旦技术发生变化,您将只是一个追忆往日美好时光的老嬉皮士:)