1 // Copyright (C) 2012 Vicente J. Botet Escriba 2 // 3 // Distributed under the Boost Software License, Version 1.0. (See accompanying 4 // file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) 5 6 // <boost/thread/lock_factories.hpp> 7 8 // template <class Mutex> class unique_lock; 9 // unique_lock<Mutex> make_unique_lock(Mutex&, adopt_lock_t); 10 11 #define BOOST_THREAD_VERSION 4 12 13 #include <boost/thread/lock_factories.hpp> 14 #include <boost/thread/mutex.hpp> 15 #include <boost/detail/lightweight_test.hpp> 16 main()17int main() 18 { 19 boost::mutex m; 20 m.lock(); 21 #if ! defined(BOOST_NO_CXX11_AUTO_DECLARATIONS) 22 auto 23 #else 24 boost::unique_lock<boost::mutex> 25 #endif 26 lk = boost::make_unique_lock(m, boost::adopt_lock); 27 BOOST_TEST(lk.mutex() == &m); 28 BOOST_TEST(lk.owns_lock() == true); 29 30 return boost::report_errors(); 31 } 32