From 8a274eab3feab820f38503f98a3caecb5dded4a5 Mon Sep 17 00:00:00 2001 From: Riccardo Spagni Date: Sun, 18 Sep 2016 17:21:44 +0200 Subject: switch wallet API from std thread/mutex to boost --- src/wallet/api/wallet.cpp | 8 ++++---- src/wallet/api/wallet.h | 14 +++++++------- 2 files changed, 11 insertions(+), 11 deletions(-) (limited to 'src/wallet') diff --git a/src/wallet/api/wallet.cpp b/src/wallet/api/wallet.cpp index 25a20a575..74552bc03 100644 --- a/src/wallet/api/wallet.cpp +++ b/src/wallet/api/wallet.cpp @@ -170,7 +170,7 @@ WalletImpl::WalletImpl(bool testnet) m_refreshThreadDone = false; m_refreshEnabled = false; m_refreshIntervalSeconds = DEFAULT_REFRESH_INTERVAL_SECONDS; - m_refreshThread = std::thread([this] () { + m_refreshThread = boost::thread([this] () { this->refreshThreadFunc(); }); @@ -632,12 +632,12 @@ void WalletImpl::refreshThreadFunc() LOG_PRINT_L3(__FUNCTION__ << ": starting refresh thread"); while (true) { - std::unique_lock lock(m_refreshMutex); + boost::mutex::scoped_lock lock(m_refreshMutex); if (m_refreshThreadDone) { break; } LOG_PRINT_L3(__FUNCTION__ << ": waiting for refresh..."); - m_refreshCV.wait_for(lock, std::chrono::seconds(m_refreshIntervalSeconds)); + m_refreshCV.wait(lock); LOG_PRINT_L3(__FUNCTION__ << ": refresh lock acquired..."); LOG_PRINT_L3(__FUNCTION__ << ": m_refreshEnabled: " << m_refreshEnabled); LOG_PRINT_L3(__FUNCTION__ << ": m_status: " << m_status); @@ -652,7 +652,7 @@ void WalletImpl::refreshThreadFunc() void WalletImpl::doRefresh() { // synchronizing async and sync refresh calls - std::lock_guard guarg(m_refreshMutex2); + boost::lock_guard guarg(m_refreshMutex2); try { m_wallet->refresh(); } catch (const std::exception &e) { diff --git a/src/wallet/api/wallet.h b/src/wallet/api/wallet.h index 9a290e0bc..658296c30 100644 --- a/src/wallet/api/wallet.h +++ b/src/wallet/api/wallet.h @@ -35,9 +35,9 @@ #include "wallet/wallet2.h" #include -#include -#include -#include +#include +#include +#include namespace Bitmonero { @@ -113,12 +113,12 @@ private: std::atomic m_refreshThreadDone; std::atomic m_refreshIntervalSeconds; // synchronizing refresh loop; - std::mutex m_refreshMutex; + boost::mutex m_refreshMutex; // synchronizing sync and async refresh - std::mutex m_refreshMutex2; - std::condition_variable m_refreshCV; - std::thread m_refreshThread; + boost::mutex m_refreshMutex2; + boost::condition_variable m_refreshCV; + boost::thread m_refreshThread; }; -- cgit v1.2.3