【发布时间】:2016-11-22 02:37:51
【问题描述】:
我想在 ETS 表中存储有关其他网络参与者信息的元组。
我想使用 {ip_address(), port_number()} 的元组(inet:peername(Socket) 的返回作为条目的键。我想使用地址/端口的组合作为 ETS 表中其他节点/条目的标识符。
这可以用 ets 实现吗?还是我必须使用其他类型作为键?
【问题讨论】:
-
你的意思是像
ets:insert(Table, {{"127.0.0.1", 4000}, value}).?这似乎工作正常。 -
更像
ets:insert(Table, {{{0,0,0,0,0,0,0,1}, 4000}, value}).。它对我来说似乎也很好用。然而,我最近遇到了一些奇怪的错误,找不到有关是否可以使用元组的信息。我可以想象,也许 erlang 会混淆它应该将哪个嵌套元组视为键。 -
这也应该没问题。也许添加一些相关的代码和你得到的确切错误。