是否存在状态延续或保存堆的延续?

问题描述 投票:0回答:1

在函数式编程中,continuation非常有用,因为continuation存储程序计数器和堆栈;可变堆没有必要明显保存。

如果要在Java,JavaScript等非函数式编程语言中应用continuation,该怎么办?在这里,我们应该保存可变堆,以便在需要时正确恢复程序。我正在寻找一种类似延续的技术,我们可以在这种语言中使用(例如Java),但我找不到它。你知道这个吗?

functional-programming heap continuations
1个回答
0
投票

我不认为典型的延续实现支持堆的自动跟踪,但它肯定是可以相对容易地添加的东西。

例如,Seaside web framework使用continuation来模拟显示组件的流程。由于保存完整的堆将是昂贵的,开发人员可以register which objects they like to track。这通过在创建延续时创建快照,并在继续恢复时恢复对象来工作。这样可以在使用浏览器中的后退和前进按钮时自动恢复应用程序状态。

© www.soinside.com 2019 - 2024. All rights reserved.