Matt Corallo efac91e654 Always wait for threadGroup to exit in bitcoind shutdown
This resolves a possible-assert-on-shutdown race introduced in
1f668b646806f94acd851acdbd9939c24e0492d3 when early shutdown
occurs.

Previously this was not done to avoid any cases where the
threadGroup might not exit due to a blocking thread, but at this
point the threadGroup isn't used all that much, plus Qt already
does this, and its good to keep their init/shutdown consistent.

For those curious, the threadGroup is only used in a few places:
 * Its used to run the CCheckQueues in script validation, but these
   use the boost mutex/condition variable primitives, so they
   respect the interrupt pretty trivially.
 * Its used for the import thread, which should exit rather quickly
   as mostly it just calls LoadExternalBlockFile, which has an
   interruption_point right before each block loaded.
 * Its used in the scheduler thread, which is only used for:
   * validationinterface has an effectively-dummy reference to it.
   * wallet compaction, which should not last long
   * addr/banlist dumping from CConnman, which should also be fast
2017-08-01 16:35:02 -04:00
..
2017-07-20 09:03:53 -07:00
2017-07-15 14:28:40 +02:00
2017-06-22 19:18:10 +03:00
2017-07-31 12:19:05 +02:00
2017-06-22 19:18:10 +03:00
2017-07-08 13:33:01 -07:00
2017-07-08 13:33:01 -07:00
2017-07-15 14:28:40 +02:00
2017-06-09 10:25:26 +02:00
2017-07-17 11:56:00 +02:00
2017-06-09 10:25:26 +02:00
2017-06-05 16:33:35 -04:00
2017-07-22 09:55:57 +02:00
2017-07-22 09:55:57 +02:00
2017-07-22 09:55:57 +02:00
2017-06-22 19:18:10 +03:00
2017-07-08 13:33:01 -07:00
2017-07-08 13:33:01 -07:00
2017-06-09 10:25:26 +02:00
2017-07-08 13:33:01 -07:00
2017-07-14 19:24:17 +00:00
2017-07-22 09:55:57 +02:00
2017-07-22 09:55:57 +02:00