33 socket->getEventBase()->runImmediatelyOrRunInEventBaseThreadAndWait(
36 socket, worker.get(), worker->getEventBase());
43 auto worker = [&]() -> std::shared_ptr<Acceptor> {
61 socket->getEventBase()->runImmediatelyOrRunInEventBaseThreadAndWait(
64 socket, worker.get(),
nullptr);
68 auto evb = worker->getEventBase();
70 evb->runImmediatelyOrRunInEventBaseThreadAndWait(
72 w->dropAllConnections();
std::shared_ptr< WorkerMap > workers_
folly::IOThreadPoolExecutor * exec_
void threadStopped(folly::ThreadPoolExecutor::ThreadHandle *) override
constexpr detail::Map< Move > move
std::shared_ptr< Mutex > workersMutex_
std::shared_ptr< std::vector< std::shared_ptr< folly::AsyncSocketBase > > > sockets_
void threadStarted(folly::ThreadPoolExecutor::ThreadHandle *) override
NetworkSocket socket(int af, int type, int protocol)
folly::EventBase * getEventBase() override
std::shared_ptr< ServerSocketFactory > socketFactory_
std::shared_ptr< AcceptorFactory > acceptorFactory_