2013-10-01 2 views
0

Создаю супервизор, который создает дочерний элемент (например, прослушивание процесса на порту). Я хочу передать PID администратора SupPid ребенку, чтобы он мог динамически запускать других детей с supervisor:start_child() (например, когда соединение получено). Как получить ПИД-диспетчер, изнутри супервизора?Получить PID себя (супервизор)

-module(the_supervisor) 

start_link() -> 
    supervisor:start_link({local, ?MODULE}, ?MODULE, []). 

init([]) -> 
    SupPid = get_my_own_pid(), % <-- get pid of the supervisor and pass it later 
    ChildSpec = ?CHILD_WITH_ARGS(some_children, worker, [SupPid]), 
    {ok, {{one_for_one, 5, 10}, 
      [ChildSpec]} }. 

Связанные

ответ

Смежные вопросы