[erlang-questions] changing the internal message transfer protocol
Guilherme Silveira
guilherme.silveira@REDACTED
Fri Sep 25 18:08:05 CEST 2009
Thanks Jachym,
>> Pid = spawn(NodeName, M, F, A).
> See lib/kernel/src/erlang.erl:spawn/4.
spawn invokes gen_server when NodeName =/= node(), which invokes
gen:call, which invokes erlang:send.
But I was unable to find who exports erlang:send... the erlang module
(erlang.erl) only exports dsend, which connnects+invokes send.
Reading the net_kernel and do_connect implementations, it seems as
connections are treated with their own local pids and kept alive. But
still...
Any suggestions where to find the send implementation?
Regards
>
>> Pid!{values}
>
> See erts/emulator/beam/bif.c:ebif_bang_2().
>
> Just a result of quick code inspection, I don't posses actual wisdom
> regarding how they work ;-).
>
> Have fun,
> -- Jachym
>
More information about the erlang-questions
mailing list