JavaScript中的Pickle / Serialize生成器状态

时间:2019-06-11 13:30:05

标签: javascript serialization generator continuations

是否可以在JavaScript中序列化生成器?从磁盘反序列化并继续其计算? 如果没有,是否还有其他主流语言支持该功能?

1 个答案:

答案 0 :(得分:1)

不在Javascript中(2020年4月)。

您所描述的功能有时称为“带有快照的协程”或“可序列化的一流延续”。

Scala对此进行了一些尝试,但似乎大部分都被放弃了。 参见http://storm-enroute.com/coroutines/docs/0.6/snapshots/

Java的project loom似乎还具有序列化连续性的功能。

此外,在Wikipedia中,有list种语言支持一流的延续。它没有指定哪些也可以创建快照/序列化,但这似乎是一个不错的开始。

最后一件事,在许多情况下,您可以简单地根据状态来定义所需的逻辑,而无需任何特殊的语言功能要求(例如,状态图,工作流图,规则引擎等) 。,)

(这就是您所描述的功能在编程语言中经常会丢失的原因。实现起来很复杂,而且通常很难找到没有合理替代品的用例)