Erlang 如何正确使用rpc:pmap?
我在模块Erlang 如何正确使用rpc:pmap?,erlang,rpc,pmap,Erlang,Rpc,Pmap,我在模块rpc函数中找到了。当我尝试使用它时,我就卡住了 第一个问题-它是否需要与其他节点连接,或者如果没有与其他节点的连接,它将作为lists:map执行 我尝试在没有连接到其他节点的情况下执行pmap,但出现异常: 7> rpc:pmap( { erlang, '+' }, [], [[1,1],[2,3]] ). ** exception exit: badrpc in function rpc:check/2 (rpc.erl, line 745)
rpc
函数中找到了。当我尝试使用它时,我就卡住了
第一个问题-它是否需要与其他节点连接,或者如果没有与其他节点的连接,它将作为lists:map
执行
我尝试在没有连接到其他节点的情况下执行pmap
,但出现异常:
7> rpc:pmap( { erlang, '+' }, [], [[1,1],[2,3]] ).
** exception exit: badrpc
in function rpc:check/2 (rpc.erl, line 745)
之后,我启动了另一个本地节点,并将其与当前节点连接。但仍然会得到相同的错误
请告诉我如何正确使用rpc:pmap
谢谢
p.S.
以下代码正常工作(返回结果3):
rpc:map({Module,Function},ExtraArgs,List1)为List1中的每个元素元素并行计算apply(Module,Function,[Elem|ExtraArgs])
因此,使用erlang:“+”的正确语法是:
1> rpc:pmap({erlang,'+'}[2],[1,2,3])
[3,4,5]
2>
它计算[1+2,2+2,3+2]
语法rpc:pmap({lists,sum},[],[[1,2],[4,5]])将计算[1+2,4+5]并返回
[3,9]
帕斯卡感谢您的澄清:)我没有考虑到[[1,2]|[]]
是[[1,2]]
,而不是[1,2]
。
70> erlang:apply( erlang, '+', [1,2] ).
3
71> erlang:'+'(1,2).
3