过去一周我一直在学习 erlang,并且正在阅读 Joe Armstrong 的 Pragmatic erlang 书。我正在编写一些代码来生成进程,并且遇到了一种情况,我在模块 myatom.erl 中有一个函数,看起来像这样
start(anatom,Fun) ->
case whereis(anatom) of
undefined ->
Pid = spawn(Fun),
try register(anatom,Pid) of
true -> true
catch
error:Reason ->
Reason
end;
Other -> {error,already_defined}
end.
在另一个名为 tloop.erl 的模块中有一个函数
loop() ->
receive
{ From , No } -> From ! { self(), No*4};
Other -> void
end.
如果我要使用 start() 在 erlang shell 中生成循环,我该怎么做?当我这样做时出现以下错误
anatom:start(atomname,tloop:loop).
提前致谢 !
anatom:start(myatom,fun tloop:loop).
* 2: syntax error before: ')