diff options
author | Henning Baldersheim <balder@yahoo-inc.com> | 2022-03-03 13:53:30 +0000 |
---|---|---|
committer | Henning Baldersheim <balder@yahoo-inc.com> | 2022-03-03 13:53:30 +0000 |
commit | da9cd02f57209a4ad8e456d5bae5c38f2c51592b (patch) | |
tree | 0d10610cdaee43c8c1bc9c341b530ad3278f7a27 /config | |
parent | fc86d2bd7ff710f24d61c124ae9b4e6c7fd835db (diff) |
relative std::this_thread::sleep_for is more efficient than absolute std::this_thread::sleep_until. This is the opposite of std::condition_variable::wait_until/wait_for.
Diffstat (limited to 'config')
-rw-r--r-- | config/src/vespa/config/subscription/configsubscriptionset.cpp | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/config/src/vespa/config/subscription/configsubscriptionset.cpp b/config/src/vespa/config/subscription/configsubscriptionset.cpp index e106f21e4b2..df913ed961c 100644 --- a/config/src/vespa/config/subscription/configsubscriptionset.cpp +++ b/config/src/vespa/config/subscription/configsubscriptionset.cpp @@ -18,7 +18,7 @@ using vespalib::steady_time; namespace config { ConfigSubscriptionSet::ConfigSubscriptionSet(std::shared_ptr<IConfigContext> context) - : _maxNapTime(vespalib::adjustTimeoutByDetectedHz(10ms)), + : _maxNapTime(vespalib::adjustTimeoutByDetectedHz(20ms)), _context(std::move(context)), _mgr(_context->getManagerInstance()), _currentGeneration(-1), @@ -82,7 +82,7 @@ ConfigSubscriptionSet::acquireSnapshot(duration timeout, bool ignoreChange) lastGeneration = generation; now = steady_clock::now(); if (!inSync && (now < deadline)) { - std::this_thread::sleep_until(std::min(now + _maxNapTime, deadline)); + std::this_thread::sleep_for(std::min(_maxNapTime, deadline - now)); } else { break; } |