我通过 elixir 使用 ets 作为一个简单的内存持久层来存储和检索键,也用于偶尔的 foldl,这涉及减少许多具有不同值的重复键。我正在使用包选项。
是否有一种简单的,可能是 O(1) 的方法来检索仅包含当前键的列表,而无需进行更复杂的表遍历或匹配或折叠?
欢迎 Erlang 或 Elixir 语法响应。
:ets.new(:cache, [:bag, :named_table, :protected])
我有一个由整数索引的原子键的静态映射,用于协助插入。但并不是所有的键都被使用..
chunk_key_map = %{2 => :chunk_key_2, ..... 28 => :chunk_key_28}
如果没有快速的方法,我知道我可以做一个 ets:lookup 尝试我的每个静态原子键值并测试 != [] 并生成我自己的列表,但想看看 ets 是否支持这样的功能。
谢谢