当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


erlang nodes(Arg, InfoOpts)用法及代码示例


nodes(Arg, InfoOpts) -> [NodeInfo]
OTP 25.1
类型:
NodeType = visible | hidden | connected | this | known
Arg = NodeType | [NodeType]
InfoOpts = 
    #{connection_id => boolean(), node_type => boolean()}
NodeTypeInfo = visible | hidden | this | known
ConnectionId = undefined | integer()
Info = 
    #{connection_id => ConnectionId, node_type => NodeTypeInfo}
NodeInfo = {node(), Info}

返回一个列表NodeInfo元组。第一个元素是节点名称。要包含在列表中的节点由第一个参数确定Arg以同样的方式nodes(Arg)。第二个元素NodeInfotuples 是一个映射,包含有关第一个元素标识的节点的更多信息。该Map中显示的信息由InfoOptsmap 作为第二个参数传递。目前,以下协会被允许InfoOptsMap:


connection_id => boolean()

如果关联的值等于 true ,则返回结果中的 Info 映射将包含与值 ConnectionId 关联的键 connection_id 。如果 ConnectionId 等于 undefined ,则该节点未连接到调用者正在执行的节点,或者是调用者正在执行的节点。如果ConnectionId是一个整数,则该节点当前连接到调用者正在执行的节点。

整数连接标识符值与节点名称一起标识具有该节点名称的节点的特定连接实例。连接标识符值是节点本地的。也就是说,在另一个节点上,连接标识符将不是是相同的值。如果连接被断开然后再次被占用,则到该节点的连接的连接标识符值将发生变化。连接标识符的值的数量是有限的,因此有可能在不同的实例中看到相同的值,但可能性很小。两个连续连接实例之间的值如何变化是未定义的。


node_type => boolean()

如果关联的值等于 true ,则返回结果中的 Info 映射将包含与值 NodeTypeInfo 关联的键 node_type 。目前存在以下节点类型:


visible

该节点通过普通的可见连接连接到调用进程的节点。也就是说,节点名称将出现在返回的结果中nodes/0.


hidden

该节点通过隐藏连接连接到调用进程的节点。也就是说,节点名称将不是出现在返回的结果中nodes/0.


this

这是调用进程的节点。


known

该节点未连接,但调用进程的节点已知。

例子:

(a@localhost)1> nodes([this, connected], #{connection_id=>true, node_type=>true}). 
[{c@localhost,#{connection_id => 13892108,node_type => hidden}},
 {b@localhost,#{connection_id => 3067553,node_type => visible}},
 {a@localhost,#{connection_id => undefined,node_type => this}}]
(a@localhost)2>

相关用法


注:本文由纯净天空筛选整理自erlang.org大神的英文原创作品 nodes(Arg, InfoOpts) -> [NodeInfo]。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。