diff options
author | Tiger Wang <ziwei.tiger@outlook.com> | 2020-05-20 20:59:46 +0200 |
---|---|---|
committer | Tiger Wang <ziwei.tiger@outlook.com> | 2020-07-26 19:57:48 +0200 |
commit | 072fdf348826db6bc75207540c55e8e275227516 (patch) | |
tree | 433cf29095b8796dd737790fa0be693b1b836613 /src/OSSupport/NetworkSingleton.cpp | |
parent | 1.14 connection support (diff) | |
download | cuberite-072fdf348826db6bc75207540c55e8e275227516.tar cuberite-072fdf348826db6bc75207540c55e8e275227516.tar.gz cuberite-072fdf348826db6bc75207540c55e8e275227516.tar.bz2 cuberite-072fdf348826db6bc75207540c55e8e275227516.tar.lz cuberite-072fdf348826db6bc75207540c55e8e275227516.tar.xz cuberite-072fdf348826db6bc75207540c55e8e275227516.tar.zst cuberite-072fdf348826db6bc75207540c55e8e275227516.zip |
Diffstat (limited to 'src/OSSupport/NetworkSingleton.cpp')
-rw-r--r-- | src/OSSupport/NetworkSingleton.cpp | 10 |
1 files changed, 7 insertions, 3 deletions
diff --git a/src/OSSupport/NetworkSingleton.cpp b/src/OSSupport/NetworkSingleton.cpp index e022f4fec..54842f358 100644 --- a/src/OSSupport/NetworkSingleton.cpp +++ b/src/OSSupport/NetworkSingleton.cpp @@ -16,7 +16,8 @@ cNetworkSingleton::cNetworkSingleton() : - m_HasTerminated(true) + m_HasTerminated(true), + m_Resolver(m_Context) { } @@ -47,7 +48,9 @@ cNetworkSingleton & cNetworkSingleton::Get(void) void cNetworkSingleton::Initialise(void) { // Start the lookup thread - m_LookupThread.Start(); + m_Context.restart(); + m_Context.get_executor().on_work_started(); + m_LookupThread = std::thread([this] { m_Context.run(); }); // Windows: initialize networking: #ifdef _WIN32 @@ -100,7 +103,8 @@ void cNetworkSingleton::Terminate(void) ASSERT(!m_HasTerminated); // Wait for the lookup thread to stop - m_LookupThread.Stop(); + m_Context.get_executor().on_work_finished(); + m_LookupThread.join(); // Wait for the LibEvent event loop to terminate: event_base_loopbreak(m_EventBase); |