mirror of
https://github.com/monero-project/monero-gui.git
synced 2025-01-11 13:24:33 +00:00
Cache daemon target height
This commit is contained in:
parent
6c6b10855f
commit
80795971fe
2 changed files with 13 additions and 2 deletions
|
@ -12,7 +12,8 @@
|
||||||
#include <QTimer>
|
#include <QTimer>
|
||||||
|
|
||||||
namespace {
|
namespace {
|
||||||
static const int DAEMON_BLOCKCHAIN_HEIGHT_CACHE_TTL_SECONDS = 60;
|
static const int DAEMON_BLOCKCHAIN_HEIGHT_CACHE_TTL_SECONDS = 10;
|
||||||
|
static const int DAEMON_BLOCKCHAIN_TARGET_HEIGHT_CACHE_TTL_SECONDS = 60;
|
||||||
}
|
}
|
||||||
|
|
||||||
class WalletListenerImpl : public Bitmonero::WalletListener
|
class WalletListenerImpl : public Bitmonero::WalletListener
|
||||||
|
@ -169,7 +170,13 @@ quint64 Wallet::daemonBlockChainHeight() const
|
||||||
|
|
||||||
quint64 Wallet::daemonBlockChainTargetHeight() const
|
quint64 Wallet::daemonBlockChainTargetHeight() const
|
||||||
{
|
{
|
||||||
m_daemonBlockChainTargetHeight = m_walletImpl->daemonBlockChainTargetHeight();
|
|
||||||
|
if (m_daemonBlockChainTargetHeight == 0
|
||||||
|
|| m_daemonBlockChainTargetHeightTime.elapsed() / 1000 > m_daemonBlockChainTargetHeightTtl) {
|
||||||
|
m_daemonBlockChainTargetHeight = m_walletImpl->daemonBlockChainTargetHeight();
|
||||||
|
m_daemonBlockChainTargetHeightTime.restart();
|
||||||
|
}
|
||||||
|
|
||||||
return m_daemonBlockChainTargetHeight;
|
return m_daemonBlockChainTargetHeight;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -261,6 +268,8 @@ Wallet::Wallet(Bitmonero::Wallet *w, QObject *parent)
|
||||||
, m_historyModel(nullptr)
|
, m_historyModel(nullptr)
|
||||||
, m_daemonBlockChainHeight(0)
|
, m_daemonBlockChainHeight(0)
|
||||||
, m_daemonBlockChainHeightTtl(DAEMON_BLOCKCHAIN_HEIGHT_CACHE_TTL_SECONDS)
|
, m_daemonBlockChainHeightTtl(DAEMON_BLOCKCHAIN_HEIGHT_CACHE_TTL_SECONDS)
|
||||||
|
, m_daemonBlockChainTargetHeight(0)
|
||||||
|
, m_daemonBlockChainTargetHeightTtl(DAEMON_BLOCKCHAIN_TARGET_HEIGHT_CACHE_TTL_SECONDS)
|
||||||
{
|
{
|
||||||
m_history = new TransactionHistory(m_walletImpl->history(), this);
|
m_history = new TransactionHistory(m_walletImpl->history(), this);
|
||||||
m_walletImpl->setListener(new WalletListenerImpl(this));
|
m_walletImpl->setListener(new WalletListenerImpl(this));
|
||||||
|
|
|
@ -172,7 +172,9 @@ private:
|
||||||
mutable QTime m_daemonBlockChainHeightTime;
|
mutable QTime m_daemonBlockChainHeightTime;
|
||||||
mutable quint64 m_daemonBlockChainHeight;
|
mutable quint64 m_daemonBlockChainHeight;
|
||||||
int m_daemonBlockChainHeightTtl;
|
int m_daemonBlockChainHeightTtl;
|
||||||
|
mutable QTime m_daemonBlockChainTargetHeightTime;
|
||||||
mutable quint64 m_daemonBlockChainTargetHeight;
|
mutable quint64 m_daemonBlockChainTargetHeight;
|
||||||
|
int m_daemonBlockChainTargetHeightTtl;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue