Wallet: Let the interval-flushing thread figure out the filename

This commit is contained in:
Luke Dashjr
2016-09-09 08:15:01 +00:00
parent bfc7aad008
commit fb0c934d1b
4 changed files with 11 additions and 3 deletions

View File

@@ -3549,6 +3549,8 @@ bool CWallet::InitLoadWallet()
return true;
}
std::atomic<bool> CWallet::fFlushThreadRunning(false);
void CWallet::postInitProcess(boost::thread_group& threadGroup)
{
// Add wallet transactions that aren't already in a block to mempool
@@ -3556,7 +3558,9 @@ void CWallet::postInitProcess(boost::thread_group& threadGroup)
ReacceptWalletTransactions();
// Run a thread to flush wallet periodically
threadGroup.create_thread(boost::bind(&ThreadFlushWalletDB, boost::ref(this->strWalletFile)));
if (!CWallet::fFlushThreadRunning.exchange(true)) {
threadGroup.create_thread(ThreadFlushWalletDB);
}
}
bool CWallet::ParameterInteraction()