【问题标题】:Erlang: atoms or integersErlang:原子或整数
【发布时间】:2012-02-17 09:49:14
【问题描述】:

我想传递这样的消息

{up, Distance}
{down, Distance}

我也可以这样做

{1, Distance}
{-1, Distance}

关键区别在于一个是原子,另一个是整数。在此处阅读手册页:

http://www.erlang.org/doc/efficiency_guide/advanced.html

整数和原子都在内存中占用 1 个单词。但是他们提到了一个原子表并且需要引用它。

我的问题是,每次使用原子时都会引用原子表吗?我的哪个例子最有效?

【问题讨论】:

    标签: erlang integer processing-efficiency


    【解决方案1】:

    它们将同样有效。当与其他术语进行模式匹配时,使用原子的整数表示。原子表仅在打印原子或通过网络发送原子时使用(在这些例外情况下,使用原子会稍微慢一些)。

    在这种情况下,可读性优于性能。

    【讨论】:

      猜你喜欢
      • 2012-06-09
      • 2017-03-01
      • 2015-04-27
      • 2018-03-15
      • 1970-01-01
      • 2011-08-16
      • 2011-01-14
      • 2016-07-01
      • 1970-01-01
      相关资源
      最近更新 更多