ETS 全称为 Erlang Term Storage, 常用于作为一种缓存机制, 适合存储大量的数据.
新建一个 ets 表
:ets.new(:bucket, [:set, :protected]
第一个参数是表的名称, 第二个参数是设置选项, 其中包括:
type
set 一个 key 一个数据, 无顺序
ordered_set 一个 key 一个数据, 有顺序, 相等的 key 会被当成同一个, 例如 1 和 1.0
bag 一个 key 多个数据, 但一个 key 下不可有重复的数据
duplicate_bag 一个 key 多个数据, 且可以重复
access
public 任何进程都可读写表
protected 只有表的拥有者可以读写, 其它进程只能读
private 只有表的拥有者可以读写
named_table
为 ets 表命名, 替代它的 id
{:keypos, pos}
选择元组的第几个参数作为 key, 默认是 1.
tweaks
{write_concurrency, boolean()}
并发写{read_concurrency, boolean()}
并发读
在 ets 表中查询
:ets.lookup(table, key)
在 ets 表中删除数据
:ets.delete(table, key)
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。