[erlang-questions] process will stack overflow after received many message?
Robert Raschke
rtrlists@REDACTED
Fri Sep 16 10:44:39 CEST 2011
On Fri, Sep 16, 2011 at 9:38 AM, Jovi Zhang <bookjovi@REDACTED> wrote:
> Hi,
> I am a newbie of Erlang, here I have a question for receive
> message in Erlang loop.
> Like below Erlang code, when process receive one message, it will
> invoke loop again,
> then it can service like a server, receive message forever.
> BUT is possible that process will stack overflow after receive too
> many message? the process invoke loop again and again.
>
> I saw there have many code write like this in <<Programming Erlang>>
> book.
>
> loop() ->
> receive
> hello ->
> io:format("hello\n"),
> loop();
> Other ->
> io:format("I don't know what is this message, ~p is ~n"
> ,[Other]),
> loop()
> end.
>
>
No stack overflow, due to tail call optimisation. See also
http://www.erlang.org/doc/reference_manual/functions.html#id74170
Robby
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://erlang.org/pipermail/erlang-questions/attachments/20110916/8ee7c15d/attachment.htm>
More information about the erlang-questions
mailing list