Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/blackberry/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Erlang 唯一的主管/服务器名称_Erlang_Otp_Erlang Supervisor - Fatal编程技术网

Erlang 唯一的主管/服务器名称

Erlang 唯一的主管/服务器名称,erlang,otp,erlang-supervisor,Erlang,Otp,Erlang Supervisor,我有一个监控结构,每个(TCP)连接需要一个监控。现在似乎每个主管都需要自己的唯一名称,而这个名称又需要是一个atom(至少我从错误消息中收集到了这个名称) 一种解决方法是每次生成一个新原子,类似于 现在我了解到原子永远不会被清理,所以有可能被太多的连接所污染,耗尽原子空间。这是如何正确完成的?这里涉及两种类型的名称,进程的注册名称和主管子级的标识符 没有必要为每个主管流程指定注册名称。启动主管流程有两个功能start\u-link/3启动主管并在给定名称下注册,而start\u-link/2启

我有一个监控结构,每个(TCP)连接需要一个监控。现在似乎每个主管都需要自己的唯一名称,而这个名称又需要是一个atom(至少我从错误消息中收集到了这个名称)

一种解决方法是每次生成一个新原子,类似于


现在我了解到原子永远不会被清理,所以有可能被太多的连接所污染,耗尽原子空间。这是如何正确完成的?

这里涉及两种类型的名称,进程的注册名称和主管子级的标识符

没有必要为每个主管流程指定注册名称。启动主管流程有两个功能
start\u-link/3
启动主管并在给定名称下注册,而
start\u-link/2
启动主管而不注册名称。(如果进程没有注册名称,则只能通过其pid来引用它。)


至于监管者子进程的标识符,如果您有一个监管者将拥有无限数量的子进程(无论这些子进程是工作进程还是监管者),您通常会使用特殊的重启类型
simple\u one\u for\u one
。这意味着,与保留静态子规范列表(从
init
回调函数返回或添加
supervisor:start\u child
函数)不同,supervisor有一个“模板”子规范,该函数创建“匿名”基于该模板的子级。

此处涉及两种类型的名称,进程的注册名称和主管子级的标识符

没有必要为每个主管流程指定注册名称。启动主管流程有两个功能
start\u-link/3
启动主管并在给定名称下注册,而
start\u-link/2
启动主管而不注册名称。(如果进程没有注册名称,则只能通过其pid来引用它。)

至于监管者子进程的标识符,如果您有一个监管者将拥有无限数量的子进程(无论这些子进程是工作进程还是监管者),您通常会使用特殊的重启类型
simple\u one\u for\u one
。这意味着,与保留静态子规范列表(从
init
回调函数返回或添加
supervisor:start\u child
函数)不同,supervisor有一个“模板”子规范,该函数基于该模板创建“匿名”子规范