在线文档教程

erl_global

erl_global

C库

erl_global

库摘要

访问全球注册名称。

描述

此模块提供了在global模块中注册,查找和取消注册名称的支持。有关更多信息,请参阅kernel:global

请注意,下面的函数使用调用者提供的打开文件描述符来执行RPC。在全局操作期间,此文件描述符不能用于其他通信,因为该函数可能会收到意外数据并失败。

输出

char **erl_global_names(fd,count)

类型

检索所有已知全局名称的列表。

  • fd是Erlang连接的打开描述符。

  • count是一个整数的地址,或者是NULL。 如果count不为NULL,则由函数将其设置为找到的名称数量。

成功时,函数返回一个字符串数组,每个字符串包含一个注册名称,并将计数设置为找到的名称数量。 该数组由一个空指针终止。 失败时,函数返回NULL并且不修改计数。

之后释放阵列是主叫方的责任。它已被功能分配给一个单一的调用malloc(),所以只需要调用free()

int erl_global_register(fd,name,pid)

类型

global...

  • fd是Erlang连接的打开描述符。

  • 名称是在全球注册的名称。

  • pid是与名称关联的pid。 当进程请求名称的位置时,此值由全局返回。

成功时返回0,否则返回-1

int erl_global_unregister(fd,name)

类型

取消注册名称global

  • fd是Erlang连接的打开描述符。

  • 名称是从全局注销的名称。

成功时返回0,否则返回-1

ETERM *erl_global_whereis(fd,name,node)

类型

在中global查找一个名字。

  • fd是Erlang连接的打开描述符。

  • name是被global查找的名字。

如果节点不是NULL,则它是指向缓冲区的指针,其中函数可以填充找到名称的节点的名称。 必要时可将节点直接传递给erl_connect()。

成功后,该函数返回一个Erlang PID,其中包含指定名称的地址,并将节点初始化为节点名,其中name被发现了。一旦失败,NULL会被返回并且node不会被修改。