Hi Howard,<br><br>I did a small test on my system, R12B-0 on Windows, with small loop which just created atoms. It crashed the system when the atom table became full, 1048576 entries. Also this was the reason given in the crash dump. Why the shell goes wrong I don't know, could be you do something else which hangs it.<br>
<br>My code:<br><br>run(N) -><br> if (N rem 1000) =:= 0 -> io:fwrite("~p\n", [N]);<br> true -> ok<br> end,<br> case catch list_to_atom("a" ++ integer_to_list(N)) of<br> A when is_atom(A) -> run(N+1);<br>
Other -> {Other,N}<br> end.<br><br>Printed 947000 before it crashes.<br><br>Robert<br><br><br><div class="gmail_quote">2008/5/24 Howard Yeh <<a href="mailto:hayeah@gmail.com">hayeah@gmail.com</a>>:<br>
<blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">Hi,<br>
<br>
What happens if I exceed the atom table limit, and how would I know?<br>
<br>
i am doing some code generation, which dynamically create maybe<br>
2000~3000 new atoms (which are reused for later). Would that go over<br>
the limit?<br>
<br>
Anyway, it seems that the shell goes into a loop. The function that<br>
does the generation would return properly, but I don't get the prompt<br>
back...<br>
<br>
it works fine for smaller test cases, so I am suspecting it might have<br>
something to do with the atom table limit. Can somebody help me to<br>
find out more?<br>
<br>
Howard<br>
_______________________________________________<br>
erlang-questions mailing list<br>
<a href="mailto:erlang-questions@erlang.org">erlang-questions@erlang.org</a><br>
<a href="http://www.erlang.org/mailman/listinfo/erlang-questions" target="_blank">http://www.erlang.org/mailman/listinfo/erlang-questions</a><br>
</blockquote></div><br>