[erlang-questions] Dynamically generated atoms get reused if they are the same?
Bengt Kleberg
bengt.kleberg@REDACTED
Tue Nov 6 08:18:02 CET 2007
yes, you are correct. only different atoms need ''different'' space.
bengt
Those were the days...
EPO guidelines 1978: "If the contribution to the known art resides
solely in a computer program then the subject matter is not
patentable in whatever manner it may be presented in the claims."
On 2007-11-05 23:21, nindeu@REDACTED wrote:
> Hi,
>
> According to http://www.erlang.org/doc/efficiency_guide/bif.html#6.1 atoms do not get garbage collected. Meaning if you constantly produce atoms by using list_to_atom/1 you sooner or later will run out of space for them.
>
> Now I just wrote a small test program which indicates that as long as you produce the same atom, it will not take up additional space:
>
> atomTest() ->
> NewAtom = list_to_atom("itsme"),
> io:format("New memory size: ~p, Atoms used: ~p~n",
> [erlang:memory(atom), erlang:memory(atom_used)]),
> register(NewAtom, self()),
> unregister(NewAtom),
> receive
> after 1000 ->
> atomTest()
> end.
>
> So, can anyone confirm, is it correct that dynamically generated Atoms are of no concern as long as you do not produce too many _different_ ones?
>
> Thank you!
>
> Regards,
> Eric
More information about the erlang-questions
mailing list