void forwarding_actor_proxy::forward_msg(const actor_addr& sender, message_id mid, message msg) { BOOST_ACTOR_LOG_TRACE(BOOST_ACTOR_ARG(id()) << ", " << BOOST_ACTOR_TSARG(sender) << ", " << BOOST_ACTOR_MARG(mid, integer_value) << ", " << BOOST_ACTOR_TSARG(msg)); shared_lock<detail::shared_spinlock> guard_(manager_mtx_); if (manager_) manager_->enqueue(invalid_actor_addr, invalid_message_id, make_message(forward_atom::value, sender, address(), mid, std::move(msg)), nullptr); }
void local_actor::join(const group& what) { BOOST_ACTOR_LOG_TRACE(BOOST_ACTOR_TSARG(what)); if (what && m_subscriptions.count(what) == 0) { BOOST_ACTOR_LOG_DEBUG("join group: " << to_string(what)); m_subscriptions.insert(std::make_pair(what, what->subscribe(this))); } }