mirror of
https://github.com/savoirfairelinux/opendht.git
synced 2026-11-08 12:28:42 +00:00
tools: always handle signals, don't block in signal handling
This commit is contained in:
1 parent
18c3161261
commit
777505434c
2 files changed
+5
-9
No files matched your search
+3
-4
@@ -503,9 +503,8 @@ main(int argc, char **argv)
|
||||
|
||||
if (params.daemonize) {
|
||||
daemonize();
|
||||
} else if (params.service) {
|
||||
setupSignals();
|
||||
}
|
||||
setupSignals();
|
||||
|
||||
auto node = std::make_shared<DhtRunner>();
|
||||
|
||||
@@ -576,7 +575,7 @@ main(int argc, char **argv)
|
||||
|
||||
std::condition_variable cv;
|
||||
std::mutex m;
|
||||
std::atomic_bool done {false};
|
||||
bool done {false};
|
||||
|
||||
node->shutdown([&]()
|
||||
{
|
||||
@@ -587,7 +586,7 @@ main(int argc, char **argv)
|
||||
|
||||
// wait for shutdown
|
||||
std::unique_lock<std::mutex> lk(m);
|
||||
cv.wait(lk, [&](){ return done.load(); });
|
||||
cv.wait(lk, [&](){ return done; });
|
||||
|
||||
node->join();
|
||||
#ifdef WIN32_NATIVE
|
||||
|
||||
Reference in new issue
Block a user