我是Erlang的新手,我一直在閱讀一些聲明原子不是垃圾回收的文檔。這一切都很好,但是隨後又出現了一個更大的問題:將它們用作模式匹配的「元組標籤」是個好主意嗎?如果我有一個相對頻繁使用Erlang的應用程序,這樣的函數:在erlang中元組模式與原子匹配是個好主意嗎?
-module(geometry).
-export([area/1]).
area({rectangle, Width, Ht}) -> Width * Ht;
area({square, X}) -> X * X;
area({circle, R}) -> 3.14159 * R * R.
將這種風險撞毀我的虛擬機?如果area
函數運行三百萬次,那麼會不會使我的Erlang虛擬機崩潰,因爲矩形,正方形和圓形是原子?
從https://pragprog.com/articles/erlang複製的示例代碼 – Tombert 2014-12-02 04:05:09
不可以。完全正常的做事方式。 – zxq9 2014-12-02 07:13:54