diff --git a/src/support/lockedpool.cpp b/src/support/lockedpool.cpp index cbb117fc3e1..ff3a9e69c58 100644 --- a/src/support/lockedpool.cpp +++ b/src/support/lockedpool.cpp @@ -399,3 +399,10 @@ void LockedPoolManager::CreateInstance() static LockedPoolManager instance(std::move(allocator)); LockedPoolManager::_instance = &instance; } + +LockedPoolManager& LockedPoolManager::Instance() +{ + static std::once_flag init_flag; + std::call_once(init_flag, LockedPoolManager::CreateInstance); + return *LockedPoolManager::_instance; +} diff --git a/src/support/lockedpool.h b/src/support/lockedpool.h index 7be20823fbf..c4966bbbbea 100644 --- a/src/support/lockedpool.h +++ b/src/support/lockedpool.h @@ -219,12 +219,7 @@ class LockedPoolManager : public LockedPool { public: /** Return the current instance, or create it once */ - static LockedPoolManager& Instance() - { - static std::once_flag init_flag; - std::call_once(init_flag, LockedPoolManager::CreateInstance); - return *LockedPoolManager::_instance; - } + static LockedPoolManager& Instance(); private: explicit LockedPoolManager(std::unique_ptr allocator);