Erlang 列表转换为pid功能列表\u转换为\u pid/1限制

Erlang 列表转换为pid功能列表\u转换为\u pid/1限制,erlang,Erlang,测试开源项目“gproc”功能时, 我发现列表到pid对于本地pid是可以的,而对于远程pid则不可以。我的erlang运行时是R15B (dist_test_n2@yus-iMac.local)29> D = list_to_pid("<0.239.0>"). <0.239.0> (dist_test_n2@yus-iMac.local)30> D == self(). %% equal here true (dist_test_n2@yus-iMac.lo

测试开源项目“gproc”功能时, 我发现列表到pid对于本地pid是可以的,而对于远程pid则不可以。我的erlang运行时是R15B

(dist_test_n2@yus-iMac.local)29> D = list_to_pid("<0.239.0>").
<0.239.0>
(dist_test_n2@yus-iMac.local)30> D == self(). %% equal here
true
(dist_test_n2@yus-iMac.local)31> f(E).
ok
(dist_test_n2@yus-iMac.local)32> E = gproc:where(Name).       
<8969.239.0>
(dist_test_n2@yus-iMac.local)33> F = list_to_pid("<8969.239.0>").
<8969.239.0>
(dist_test_n2@yus-iMac.local)34> F == E. %% not equal here
false
(距离测试)_n2@yus-iMac.local)29>D=列表到pid(“”)。
(距离测试)_n2@yus-iMac.local)30>D==self()。%这里相等
真的
(距离测试)_n2@yus-iMac.local)31>f(E)。
好啊
(距离测试)_n2@yus-iMac.local)32>E=gproc:where(Name)。
(距离测试)_n2@yus-iMac.local)33>F=列表到pid(“”)。
(距离测试)_n2@yus-iMac.local)34>F==E.%此处不相等
假的
根据用户指南中关于此功能的说明,没有此类限制。是虫子吗

正如您可以确认的那样,无法将list_to_pid/1与外部pid一起使用

如果你在谷歌上查一查,我想你也可以找到由Ulf Wiger发起的原始线程

希望这有帮助

ML帖子在这里: