void abstract_broker::launch(execution_unit* eu, bool is_lazy, bool is_hidden) { CAF_ASSERT(eu != nullptr); CAF_ASSERT(eu == &backend()); // add implicit reference count held by middleman/multiplexer if (!is_hidden) register_at_system(); CAF_PUSH_AID(id()); CAF_LOG_TRACE("init and launch broker:" << CAF_ARG(id())); if (is_lazy && mailbox().try_block()) return; intrusive_ptr_add_ref(ctrl()); eu->exec_later(this); }
void actor_companion::launch(execution_unit*, bool, bool hide) { if (!hide) register_at_system(); }
actor_pool::actor_pool(actor_config& cfg) : monitorable_actor(cfg) { register_at_system(); }