當前位置: 首頁>>編程示例 >>用法及示例精選 >>正文


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)。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。