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


Elixir Kernel.spawn_monitor用法及代碼示例


Elixir語言中 Kernel.spawn_monitor 相關用法介紹如下。

用法一

spawn_monitor(fun)
@spec spawn_monitor((() -> any())) :: {pid(), reference()}

生成給定函數,監視它並返回它的 PID 和監視參考。

通常,開發人員不使用 spawn 函數,而是使用 Task GenServer Agent 等抽象,它們構建在 spawn 之上,從而在自省和調試方麵產生更方便的進程。

查看 Process 模塊了解更多process-related 函數。

匿名函數接收 0 個參數,並且可以返回任何值。

由編譯器內聯。

例子

current = self()
spawn_monitor(fn -> send(current, {self(), 1 + 2}) end)

用法二

spawn_monitor(module, fun, args)
@spec spawn_monitor(module(), atom(), list()) :: {pid(), reference()}

生成傳遞給定參數的給定模塊和函數,監視它並返回其 PID 和監視引用。

通常,開發人員不使用 spawn 函數,而是使用 Task GenServer Agent 等抽象,它們構建在 spawn 之上,從而在自省和調試方麵產生更方便的進程。

查看 Process 模塊了解更多process-related 函數。

由編譯器內聯。

例子

spawn_monitor(SomeModule, :function, [1, 2, 3])

相關用法


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