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


Elixir Registry.unregister用法及代碼示例

Elixir語言中 Registry.unregister 相關用法介紹如下。

用法:

unregister(registry, key)
(從 1.4.0 開始)
@spec unregister(registry(), key()) :: :ok

注銷與 registry 中的當前進程關聯的給定 key 的所有條目。

如果沒有更多與當前進程關聯的鍵,則始終返回 :ok 並自動取消當前進程與所有者的鏈接。另請參閱 register/3 以了解有關 "owner" 的更多信息。

例子

對於唯一注冊表:

iex> Registry.start_link(keys: :unique, name: Registry.UniqueUnregisterTest)
iex> Registry.register(Registry.UniqueUnregisterTest, "hello", :world)
iex> Registry.keys(Registry.UniqueUnregisterTest, self())
["hello"]
iex> Registry.unregister(Registry.UniqueUnregisterTest, "hello")
:ok
iex> Registry.keys(Registry.UniqueUnregisterTest, self())
[]

對於重複的注冊表:

iex> Registry.start_link(keys: :duplicate, name: Registry.DuplicateUnregisterTest)
iex> Registry.register(Registry.DuplicateUnregisterTest, "hello", :world)
iex> Registry.register(Registry.DuplicateUnregisterTest, "hello", :world)
iex> Registry.keys(Registry.DuplicateUnregisterTest, self())
["hello", "hello"]
iex> Registry.unregister(Registry.DuplicateUnregisterTest, "hello")
:ok
iex> Registry.keys(Registry.DuplicateUnregisterTest, self())
[]

相關用法


注:本文由純淨天空篩選整理自elixir-lang.org大神的英文原創作品 Registry.unregister(registry, key)。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。