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


Elixir Process.register用法及代码示例

Elixir语言中 Process.register 相关用法介绍如下。

用法:

register(pid_or_port, name)
@spec register(pid() | port(), atom()) :: true

在给定的 name 下注册给定的 pid_or_port

name 必须是一个原子,然后可以在使用 Kernel.send/2 发送消息时代替 PID/端口标识符。

在以下任何情况下, register/2 将失败并显示 ArgumentError

  • PID/端口在本地不存在且不存在
  • 该名称已注册
  • pid_or_port 已在不同的 name 下注册

以下名称是保留的,不能分配给进程或端口:

  • nil
  • false
  • true
  • :undefined

例子

Process.register(self(), :test)
#=> true
send(:test, :hello)
#=> :hello
send(:wrong_name, :hello)
** (ArgumentError) argument error

相关用法


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