aboutsummaryrefslogtreecommitdiff
path: root/src/init.cpp
diff options
context:
space:
mode:
authorAnthony Towns <aj@erisian.com.au>2020-02-28 12:02:10 +1000
committerAnthony Towns <aj@erisian.com.au>2020-03-06 23:13:31 +1000
commit306f71b4eb4a0fd8e64f47dc008bc235b80b13d9 (patch)
treeda839e0cea4ea52524ca04e0c0c9cc71b5add687 /src/init.cpp
parent97aadf98d0b890e09eff45535fa13a663f27334d (diff)
downloadbitcoin-306f71b4eb4a0fd8e64f47dc008bc235b80b13d9.tar.xz
scheduler: don't rely on boost interrupt on shutdown
Calling interrupt_all() will immediately stop the scheduler, so it's safe to invoke stop() beforehand, and this removes the reliance on boost to interrupt serviceQueue().
Diffstat (limited to 'src/init.cpp')
-rw-r--r--src/init.cpp1
1 files changed, 1 insertions, 0 deletions
diff --git a/src/init.cpp b/src/init.cpp
index 14d489617c..a637aac4d2 100644
--- a/src/init.cpp
+++ b/src/init.cpp
@@ -206,6 +206,7 @@ void Shutdown(NodeContext& node)
// After everything has been shut down, but before things get flushed, stop the
// CScheduler/checkqueue threadGroup
+ if (node.scheduler) node.scheduler->stop();
threadGroup.interrupt_all();
threadGroup.join_all();