gpt4 book ai didi

erlang - 在连接的节点上产生的进程获得相同的 PID

转载 作者:行者123 更新时间:2023-12-01 23:08:10 24 4
gpt4 key购买 nike

我有四个 Erlang 节点在多进程应用程序上协同工作。在我的订单中,一个进程正在监控,它绘制了进程在该区域的位置,其他三个节点处理进程的位置和移动。在监视器上,当键是进程 PID 时,我使用 ETS 数据库来存储位置。我注意到节点创建的进程具有相同的 PID,这显然会中断整个系统的管理。

我尝试将进程与:

net_adm:ping(...).
net_kernel:connect(...).

我希望当节点相互意识到时,它们会给出不同的 PID,但这没有用。

最佳答案

PID 可以打印相同,例如<0.42.0> ,但这只是一个输出约定:本地节点上的 PID 打印时第一个数字是 0 .如果您将此 PID 发送到另一个节点并在那里打印,它将打印为 <2265.42.0>或类似的。 PID 始终与进程运行的节点名称相关联,您可以使用 node(Pid) 提取它。 .因此,来自不同节点的 PID 永远不会比较相等。

This answer详细介绍了 PID 的结构。

关于erlang - 在连接的节点上产生的进程获得相同的 PID,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24957487/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com