From 4108420c5f690f6f7404b18dd1825fd196dedca4 Mon Sep 17 00:00:00 2001 From: Gianluca Amato Date: Mon, 8 Feb 2021 17:01:38 +0100 Subject: [PATCH] Make LockGuard methods inline to please MSVC. --- msvc/VS2019/leela-zero.vcxproj | 1 - msvc/VS2019/leela-zero.vcxproj.filters | 3 --- src/SharedMutex.cpp | 21 --------------------- src/SharedMutex.h | 19 +++++++++++++++++++ 4 files changed, 19 insertions(+), 25 deletions(-) delete mode 100644 src/SharedMutex.cpp diff --git a/msvc/VS2019/leela-zero.vcxproj b/msvc/VS2019/leela-zero.vcxproj index c3512fef9..d3e7c7ff0 100644 --- a/msvc/VS2019/leela-zero.vcxproj +++ b/msvc/VS2019/leela-zero.vcxproj @@ -76,7 +76,6 @@ - diff --git a/msvc/VS2019/leela-zero.vcxproj.filters b/msvc/VS2019/leela-zero.vcxproj.filters index 6fb6eaca3..5632d71ad 100644 --- a/msvc/VS2019/leela-zero.vcxproj.filters +++ b/msvc/VS2019/leela-zero.vcxproj.filters @@ -188,9 +188,6 @@ Source Files - - Source Files - diff --git a/src/SharedMutex.cpp b/src/SharedMutex.cpp deleted file mode 100644 index f687cdcc4..000000000 --- a/src/SharedMutex.cpp +++ /dev/null @@ -1,21 +0,0 @@ -#include "SharedMutex.h" - -template<> -LockGuard::LockGuard(SharedMutex &sm) : m_sm(sm) { - m_sm.lock(); -} - -template<> -LockGuard::~LockGuard() { - m_sm.unlock(); -} - -template<> -LockGuard::LockGuard(SharedMutex &sm) : m_sm(sm) { - m_sm.lock_shared(); -} - -template<> -LockGuard::~LockGuard() { - m_sm.unlock_shared(); -} diff --git a/src/SharedMutex.h b/src/SharedMutex.h index edfef135c..a7ed692c8 100644 --- a/src/SharedMutex.h +++ b/src/SharedMutex.h @@ -82,4 +82,23 @@ class LockGuard { SharedMutex &m_sm; }; +template<> +inline LockGuard::LockGuard(SharedMutex& sm) : m_sm(sm) { + m_sm.lock(); +} + +template<> +inline LockGuard::~LockGuard() { + m_sm.unlock(); +} + +template<> +inline LockGuard::LockGuard(SharedMutex& sm) : m_sm(sm) { + m_sm.lock_shared(); +} + +template<> +inline LockGuard::~LockGuard() { + m_sm.unlock_shared(); +} #endif