Summary:
Switching ServiceRouter code to use VirtualEventBase instead of EventBase allows us to have same thread-pool shared between multiple ServiceRouter instances.
In future this allows us to replace EventBasePoolImpl with some generic thread-pool implementation (e.g. IOThreadPoolExecutor). It also makes it trivial to have ServiceRouter run on a any existing thread-pool if necessary.
Reviewed By: smichelson
Differential Revision:
D3935283
fbshipit-source-id:
3275bbace15a0df8b06d12c970ccc098a631658d
return LoopKeepAlive(this);
}
+ bool inRunningEventBaseThread() const {
+ return evb_.inRunningEventBaseThread();
+ }
+
private:
using LoopCallbackList = EventBase::LoopCallback::List;