Add CallFunctionInQueue to wait on validation interface queue drain

This commit is contained in:
Matt Corallo
2017-06-08 11:13:46 -04:00
parent 2b4b34503f
commit 0b2f42d737
2 changed files with 18 additions and 2 deletions

View File

@@ -104,6 +104,10 @@ void UnregisterAllValidationInterfaces() {
g_signals.m_internals->NewPoWValidBlock.disconnect_all_slots();
}
void CallFunctionInValidationInterfaceQueue(std::function<void ()> func) {
g_signals.m_internals->m_schedulerClient.AddToProcessQueue(std::move(func));
}
void CMainSignals::MempoolEntryRemoved(CTransactionRef ptx, MemPoolRemovalReason reason) {
if (reason != MemPoolRemovalReason::BLOCK && reason != MemPoolRemovalReason::CONFLICT) {
m_internals->m_schedulerClient.AddToProcessQueue([ptx, this] {