我知道如何创建一个带有初始孩子列表的主管。
defmodule TweetProcesser.DummySupervisor do
use Supervisor
def start_link(opts) do
Supervisor.start_link(__MODULE__, :ok, opts)
end
@impl true
def init(:ok) do
children = [
Supervisor.child_spec({TweetProcesser.Worker, []}, id: :my_worker_1),
Supervisor.child_spec({TweetProcesser.Worker, []}, id: :my_worker_2),
Supervisor.child_spec({TweetProcesser.Worker, []}, id: :my_worker_3),
Supervisor.child_spec({TweetProcesser.Worker, []}, id: :my_worker_4),
Supervisor.child_spec({TweetProcesser.Worker, []}, id: :my_worker_5)
]
opts = [strategy: :one_for_one, name: TweetProcesser.WorkerSupervisor]
Supervisor.init(children, opts)
end
end
但是我怎样才能在运行时添加新的孩子或从这个列表中删除孩子的功能呢?这样,其他参与者可以在运行时调用这些函数以添加或删除子项。