I G*_*ERS 10
是的,这是可能的,但没有"移动进程到节点"调用.但是,如果进程是使用迁移功能构建的,那么您当然可以通过将进程的功能及其状态发送到另一个节点并在那里安排生成来实现.要获得正确的进程标识,您需要使用全局进程注册表或gproc,因为进程将更改pid.
还有其他一些注意事项:该过程可能正在使用其数据不存在于另一个节点上的ETS表,或者它可能已在过程字典中存储了内容(从随机模块中可以看到状态).
Erlang的普遍共识是,流程不会动员在机器之间移动.相反,如果节点死亡,则可以安排在节点之间接管应用程序.或者为了分发系统,所以数据已经分发到另一台机器.在任何情况下,在发生错误时使状态持久的主要问题仍然存在,移动性与否 - 并且分发是解决持久性问题的好工具.