list转换为pid函数list_to_pid / 1限制

时间:2012-05-07 00:01:11

标签: erlang

当测试开源项目'gproc'功能时, 我发现list_to_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

关于此功能的用户指南,没有此限制。是bug吗?

1 个答案:

答案 0 :(得分:6)

因为您可以确认here,因此无法将list_to_pid / 1与外部pid一起使用。

如果您查看谷歌我认为您也可以找到由Ulf Wiger发起的原始主题。

希望这有帮助!