如何正确使用rpc:pmap?

ste*_*emm 2 erlang rpc pmap

我在模块rpc函数pmap中找到了.当我试图使用它时我就卡住了.

第一个问题 - 它是否需要与其他节点连接,或者它会像lists:map没有与其他节点的连接那样执行?

我试图在pmap没有连接到其他节点的情况下执行,但是得到了异常:

7> rpc:pmap( { erlang, '+' }, [], [[1,1],[2,3]] ).          
** exception exit: badrpc
     in function  rpc:check/2 (rpc.erl, line 745)
Run Code Online (Sandbox Code Playgroud)

之后 - 我启动了另一个本地节点并将其与当前节点连接起来.但仍然得到同样的错误.

请告诉我如何rpc:pmap正确使用.

谢谢

PS 以下代码预期工作(返回结果3):

70> erlang:apply( erlang, '+', [1,2] ).
3
71> erlang:'+'(1,2).
3
Run Code Online (Sandbox Code Playgroud)

Pas*_*cal 6

rpc:map({Module,Function},ExtraArgs,List1)并行地为List1中的每个元素Elem评估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]

帕斯卡尔