Dart 创建对象快照
我正在修补+我想建立一个2级变压器 这些阶段是:Dart 创建对象快照,dart,dart-pub,object-serialization,Dart,Dart Pub,Object Serialization,我正在修补+我想建立一个2级变压器 这些阶段是: 为每个dart源文件生成 从第一阶段输出生成新的源(包含来自所有AST的信息) 我需要将AST从一个阶段传递到另一个阶段,而不需要昂贵的序列化/反序列化,但是不能从类实例构建Asset() 是否可以构建类实例快照并将其传递到下一阶段? 这就是我目前发现的: : Dart VM使用以下类型的快照: … 对象快照。通过创建需要发送到另一个隔离的Dart对象的快照,在Dart VM中实现从一个隔离到另一个隔离的消息传递 : 在特殊情况下,当两个隔离共享
Asset
()
是否可以构建类实例快照并将其传递到下一阶段?
这就是我目前发现的:
:
Dart VM使用以下类型的快照:…
对象快照。通过创建需要发送到另一个隔离的Dart对象的快照,在Dart VM中实现从一个隔离到另一个隔离的消息传递 : 在特殊情况下,当两个隔离共享同一代码和 在同一进程中运行(例如,通过spawn创建的隔离),则 也可以发送对象实例(将在 过程) 如果“对象快照”具有相同的限制,则它对我没有帮助。 但是,非常有趣的是,通过将对象循环到生成的隔离对象,应该可以创建对象的“深度副本”(克隆) 在@lrn中指出: 我们通常不希望用任何方法来创建无法运行的对象 通过类的生成构造函数。你能读懂约书亚的话 布洛赫谈到了Java中的克隆: 即使有这样的经验 记住,我们可能能够避免接口问题,但我们不能 一般来说,决定一份深拷贝还是浅拷贝是正确的 去做。只有对象本身知道这一点
因此,即使可能,也不建议使用此链接。您看过吗?@AlexandreArdhuin谢谢您的链接!这就是我用的。看@AlexandreArdhuin,真的很酷。我在考虑写一些东西,比如memoizer(@Cached in yours package),尾部递归优化,以及一些用于调试的东西,比如调用记录器、asserter。。