From fbf9c86c5c97e0c4428882aaac4cc61c7bf1b3a3 Mon Sep 17 00:00:00 2001 From: Howard Hinnant Date: Wed, 18 Mar 2015 12:29:40 -0400 Subject: [PATCH] Remove unnecessary allocation/deallocation from masterLock * Add make_lock. * Rename Application::LockType to Application::MutexType: * Rename getMasterLock to getMasterMutex. * Use getMasterMutex and make_lock. * Remove unused code. --- beast/utility/make_lock.h | 38 ++++++++++++++++++++++++++++++++++++++ 1 file changed, 38 insertions(+) create mode 100644 beast/utility/make_lock.h diff --git a/beast/utility/make_lock.h b/beast/utility/make_lock.h new file mode 100644 index 000000000..76f9d7ff1 --- /dev/null +++ b/beast/utility/make_lock.h @@ -0,0 +1,38 @@ +//------------------------------------------------------------------------------ +/* + This file is part of Beast: https://github.com/vinniefalco/Beast + Copyright 2015, Howard Hinnant + + Permission to use, copy, modify, and/or distribute this software for any + purpose with or without fee is hereby granted, provided that the above + copyright notice and this permission notice appear in all copies. + + THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES + WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF + MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR + ANY SPECIAL , DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES + WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN + ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF + OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. +*/ +//============================================================================== + +#ifndef BEAST_UTILITY_MAKE_LOCK_H_INCLUDED +#define BEAST_UTILITY_MAKE_LOCK_H_INCLUDED + +#include +#include + +namespace beast { + +template +inline +std::unique_lock +make_lock(Mutex& mutex, Args&&... args) +{ + return std::unique_lock(mutex, std::forward(args)...); +} + +} // beast + +#endif