During Shutdown
, we stop the scheduler before waiting on the load-block thread. But the load-block thread can call LimitValidationInterfaceQueue
via ActivateBestChain
. LimitValidationInterfaceQueue
then schedules a dummy call and waits for it. But since the scheduler has stopped, it never gets there, and blocks forever. Shutdown remains joined to the thread, and also never exits.
Can we just wait for the load-block thread before killing the scheduler?