Elixir語言中 Supervisor.init
相關用法介紹如下。
用法:
init(children, options)
(從 1.5.0 開始)
@spec init([:supervisor.child_spec() | {module(), term()} | module()], [init_option()]) ::
{:ok, tuple()}
接收要初始化的 children
列表和一組 options
。
這通常在基於模塊的監督者的
回調結束時調用。有關更多信息,請參閱模塊文檔中的“基於模塊的監督者”和“start_link/2、init/2 和策略”部分。init/1
此函數返回一個包含主管標誌和子規範的元組。
例子
def init(_init_arg) do
children = [
{Stack, [:hello]}
]
Supervisor.init(children, strategy: :one_for_one)
end
選項
-
:strategy
- 監督策略選項。它可以是:one_for_one
、:rest_for_one
或:one_for_all
-
:max_restarts
- 在一個時間範圍內允許的最大重啟次數。默認為3
。 -
:max_seconds
-:max_restarts
適用的時間範圍(以秒為單位)。默認為5
。
:strategy
選項是必需的,默認情況下最多允許在 5 秒內重新啟動 3 次。查看
模塊以獲取可用策略的詳細說明。Supervisor
相關用法
- Elixir Supervisor.Spec.worker用法及代碼示例
- Elixir Supervisor.child_spec用法及代碼示例
- Elixir Supervisor.Spec用法及代碼示例
- Elixir Supervisor.Spec.supervise用法及代碼示例
- Elixir Supervisor.Spec.supervisor用法及代碼示例
- Elixir Supervisor用法及代碼示例
- Elixir StringIO.flush用法及代碼示例
- Elixir Stream用法及代碼示例
- Elixir String.contains?用法及代碼示例
- Elixir String.reverse用法及代碼示例
- Elixir Stream.drop_while用法及代碼示例
- Elixir String.to_integer用法及代碼示例
- Elixir System.stop用法及代碼示例
- Elixir Stream.map_every用法及代碼示例
- Elixir Stream.iterate用法及代碼示例
- Elixir String.pad_trailing用法及代碼示例
- Elixir Stream.dedup_by用法及代碼示例
- Elixir Stream.interval用法及代碼示例
- Elixir String.split_at用法及代碼示例
- Elixir String.valid?用法及代碼示例
- Elixir String.replace_prefix用法及代碼示例
- Elixir String.printable?用法及代碼示例
- Elixir Stream.zip用法及代碼示例
- Elixir System.fetch_env!用法及代碼示例
- Elixir String.replace_trailing用法及代碼示例
注:本文由純淨天空篩選整理自elixir-lang.org大神的英文原創作品 Supervisor.init(children, options)。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。