У меня есть простой модуль:
-module(dist).
-compile([add/3]).
add(From,X,Y) ->
From ! X+Y.
И я запускаю два узла.
Один с
erl -sname foo
и еще один с
erl -sname bar
На узле бара я делаю:
> c(dist).
{ok,dist}
> self().
<0.37.0>
> spawn('foo@unknown-00-23-6c-83-af-bd', dist, add, [self(), 3, 5]).
Но я получаю ответ:
Error in process <0.48.0> on node 'foo@unknown-00-23-6c-83-af-bd' with exit value: {undef,[{dist,add,[<8965.37.0>,3,5]}]}
Что означает эта ошибка? Я задавался вопросом, означает ли это, что мой узел foo не определил этот модуль? Я не думал, что это нужно, но проблема не была решена компиляцией dist в узле foo, поэтому я думаю, что это не проблема.