From: Razvan Becheriu Date: Tue, 15 Oct 2019 08:29:50 +0000 (+0300) Subject: use std::lock_guard whenever possible X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=8d9d752fdd05051406fa26f61c51f9e34f708261;p=thirdparty%2Fkea.git use std::lock_guard whenever possible --- diff --git a/src/bin/dhcp4/ctrl_dhcp4_srv.cc b/src/bin/dhcp4/ctrl_dhcp4_srv.cc index bf67cedfed..19e172b4d2 100644 --- a/src/bin/dhcp4/ctrl_dhcp4_srv.cc +++ b/src/bin/dhcp4/ctrl_dhcp4_srv.cc @@ -23,7 +23,7 @@ #include #include #include -#include +#include #include @@ -36,7 +36,7 @@ using namespace isc::db; using namespace isc::dhcp; using namespace isc::hooks; using namespace isc::stats; -using namespace isc::util::thread; +using namespace isc::util; using namespace std; namespace { diff --git a/src/bin/dhcp4/dhcp4_srv.cc b/src/bin/dhcp4/dhcp4_srv.cc index 39903820de..23946d9c57 100644 --- a/src/bin/dhcp4/dhcp4_srv.cc +++ b/src/bin/dhcp4/dhcp4_srv.cc @@ -45,7 +45,7 @@ #include #include #include -#include +#include #include #include #include @@ -81,7 +81,7 @@ using namespace isc::log; using namespace isc::stats; using namespace std; -using isc::util::thread::LockGuard; +using isc::util::LockGuard; namespace { diff --git a/src/bin/dhcp6/ctrl_dhcp6_srv.cc b/src/bin/dhcp6/ctrl_dhcp6_srv.cc index f88a55dd38..d405fac9ca 100644 --- a/src/bin/dhcp6/ctrl_dhcp6_srv.cc +++ b/src/bin/dhcp6/ctrl_dhcp6_srv.cc @@ -23,7 +23,7 @@ #include #include #include -#include +#include #include @@ -36,7 +36,7 @@ using namespace isc::db; using namespace isc::dhcp; using namespace isc::hooks; using namespace isc::stats; -using namespace isc::util::thread; +using namespace isc::util; using namespace std; namespace { diff --git a/src/bin/dhcp6/dhcp6_srv.cc b/src/bin/dhcp6/dhcp6_srv.cc index 49b7d14aed..6ae81aa0a4 100644 --- a/src/bin/dhcp6/dhcp6_srv.cc +++ b/src/bin/dhcp6/dhcp6_srv.cc @@ -49,7 +49,7 @@ #include #include #include -#include +#include #include #include #include @@ -91,7 +91,7 @@ using namespace isc::stats; using namespace isc::util; using namespace std; -using isc::util::thread::LockGuard; +using isc::util::LockGuard; namespace { diff --git a/src/lib/dhcp/libdhcp++.cc b/src/lib/dhcp/libdhcp++.cc index b54b229daf..51de725607 100644 --- a/src/lib/dhcp/libdhcp++.cc +++ b/src/lib/dhcp/libdhcp++.cc @@ -19,7 +19,6 @@ #include #include #include -#include #include #include @@ -90,7 +89,7 @@ void initOptionSpace(OptionDefContainerPtr& defs, const OptionDefContainerPtr& LibDHCP::getOptionDefs(const std::string& space) { static mutex local_mutex; - isc::util::thread::LockGuard lock(&local_mutex); + std::lock_guard lock(&local_mutex); // If any of the containers is not initialized, it means that we haven't // initialized option definitions at all. if (option_defs_.end() == option_defs_.find(space)) { diff --git a/src/lib/dhcpsrv/alloc_engine.h b/src/lib/dhcpsrv/alloc_engine.h index 5ea6c073c9..32c6be7fcb 100644 --- a/src/lib/dhcpsrv/alloc_engine.h +++ b/src/lib/dhcpsrv/alloc_engine.h @@ -21,7 +21,6 @@ #include #include #include -#include #include #include @@ -96,7 +95,7 @@ protected: const ClientClasses& client_classes, const DuidPtr& duid, const isc::asiolink::IOAddress& hint) { - isc::util::thread::LockGuard lock(&mutex_); + std::lock_guard lock(&mutex_); return pickAddressInternal(subnet, client_classes, duid, hint); } diff --git a/src/lib/dhcpsrv/thread_pool.h b/src/lib/dhcpsrv/thread_pool.h index 6b73ca5537..8a2ab702b4 100644 --- a/src/lib/dhcpsrv/thread_pool.h +++ b/src/lib/dhcpsrv/thread_pool.h @@ -20,8 +20,6 @@ #ifndef THREAD_POOL_H #define THREAD_POOL_H -#include - #include #include @@ -44,7 +42,7 @@ struct ThreadPoolQueue { } void add(WorkItem item) { - isc::util::thread::LockGuard lock(&mutex_); + std::lock_guard lock(&mutex_); if (exit_) { return; } @@ -72,22 +70,22 @@ struct ThreadPoolQueue { } size_t count() { - isc::util::thread::LockGuard lock(&mutex_); + std::lock_guard lock(&mutex_); return queue_.size(); } void removeAll() { - isc::util::thread::LockGuard lock(&mutex_); + std::lock_guard lock(&mutex_); removeAllUnsafe(); } void create() { - isc::util::thread::LockGuard lock(&mutex_); + std::lock_guard lock(&mutex_); exit_ = false; } void destroy() { - isc::util::thread::LockGuard lock(&mutex_); + std::lock_guard lock(&mutex_); exit_ = true; // Notify get() so that it can exit. cv_.notify_all(); diff --git a/src/lib/dhcpsrv/thread_resource_mgr.h b/src/lib/dhcpsrv/thread_resource_mgr.h index 78011ce269..baa2b1fea5 100644 --- a/src/lib/dhcpsrv/thread_resource_mgr.h +++ b/src/lib/dhcpsrv/thread_resource_mgr.h @@ -7,8 +7,6 @@ #ifndef THREAD_RESOURCE_MGR_H #define THREAD_RESOURCE_MGR_H -#include - #include #include #include @@ -22,7 +20,7 @@ class ThreadResourceMgr { typedef boost::shared_ptr ResourcePtr; public: ResourcePtr resource() { - isc::util::thread::LockGuard lock(&mutex_); + std::lock_guard lock(&mutex_); auto id = std::this_thread::get_id(); if (map_.find(id) != map_.end()) { return map_[id]; diff --git a/src/lib/stats/stats_mgr.cc b/src/lib/stats/stats_mgr.cc index f4e5d4c3b9..7335e28769 100644 --- a/src/lib/stats/stats_mgr.cc +++ b/src/lib/stats/stats_mgr.cc @@ -10,14 +10,14 @@ #include #include #include -#include +#include #include #include using namespace std; using namespace isc::data; using namespace isc::config; -using namespace isc::util::thread; +using namespace isc::util; namespace isc { namespace stats { diff --git a/src/lib/util/Makefile.am b/src/lib/util/Makefile.am index 0f0e529a17..f26fd39f00 100644 --- a/src/lib/util/Makefile.am +++ b/src/lib/util/Makefile.am @@ -14,6 +14,7 @@ libkea_util_la_SOURCES += doubles.h libkea_util_la_SOURCES += filename.h filename.cc libkea_util_la_SOURCES += hash.h libkea_util_la_SOURCES += labeled_value.h labeled_value.cc +libkea_util_la_SOURCES += lock_guard.h libkea_util_la_SOURCES += memory_segment.h libkea_util_la_SOURCES += memory_segment_local.h memory_segment_local.cc libkea_util_la_SOURCES += multi_threading_mgr.h multi_threading_mgr.cc diff --git a/src/lib/util/threads/lock_guard.h b/src/lib/util/lock_guard.h similarity index 93% rename from src/lib/util/threads/lock_guard.h rename to src/lib/util/lock_guard.h index 6c949a29f6..c656e035ca 100644 --- a/src/lib/util/threads/lock_guard.h +++ b/src/lib/util/lock_guard.h @@ -5,7 +5,6 @@ namespace isc { namespace util { -namespace thread { template class LockGuard { @@ -32,7 +31,6 @@ private: Lock* lk_; }; -} // namespace thread } // namespace util } // namespace isc