diff options
Diffstat (limited to 'src/mongo/transport/transport_layer_asio.h')
-rw-r--r-- | src/mongo/transport/transport_layer_asio.h | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/src/mongo/transport/transport_layer_asio.h b/src/mongo/transport/transport_layer_asio.h index e10d050319c..a3ded3b164a 100644 --- a/src/mongo/transport/transport_layer_asio.h +++ b/src/mongo/transport/transport_layer_asio.h @@ -130,7 +130,12 @@ public: */ class TimerService { public: - TimerService(); + using Spawn = std::function<stdx::thread(std::function<void()>)>; + struct Options { + Spawn spawn; + }; + explicit TimerService(Options opt); + TimerService() : TimerService(Options{}) {} ~TimerService(); /** @@ -165,6 +170,7 @@ public: enum class State { kInitialized, kStarted, kStopped }; AtomicWord<State> _state; + Spawn _spawn = [](std::function<void()> f) { return stdx::thread{std::move(f)}; }; stdx::thread _thread; }; |