1 | #ifndef BOOST_SMART_PTR_DETAIL_LIGHTWEIGHT_MUTEX_HPP_INCLUDED |
2 | #define BOOST_SMART_PTR_DETAIL_LIGHTWEIGHT_MUTEX_HPP_INCLUDED |
3 | |
4 | // MS compatible compilers support #pragma once |
5 | |
6 | #if defined(_MSC_VER) && (_MSC_VER >= 1020) |
7 | # pragma once |
8 | #endif |
9 | |
10 | // |
11 | // boost/detail/lightweight_mutex.hpp - lightweight mutex |
12 | // |
13 | // Copyright (c) 2002, 2003 Peter Dimov and Multi Media Ltd. |
14 | // |
15 | // Distributed under the Boost Software License, Version 1.0. (See |
16 | // accompanying file LICENSE_1_0.txt or copy at |
17 | // http://www.boost.org/LICENSE_1_0.txt) |
18 | // |
19 | // typedef <unspecified> boost::detail::lightweight_mutex; |
20 | // |
21 | // boost::detail::lightweight_mutex is a header-only implementation of |
22 | // a subset of the Mutex concept requirements: |
23 | // |
24 | // http://www.boost.org/doc/html/threads/concepts.html#threads.concepts.Mutex |
25 | // |
26 | // It maps to a CRITICAL_SECTION on Windows or a pthread_mutex on POSIX. |
27 | // |
28 | |
29 | #include <boost/config.hpp> |
30 | |
31 | #if !defined(BOOST_NO_CXX11_HDR_MUTEX ) |
32 | # include <boost/smart_ptr/detail/lwm_std_mutex.hpp> |
33 | #elif defined(_WIN32) || defined(__WIN32__) || defined(__CYGWIN__) |
34 | # include <boost/smart_ptr/detail/lwm_win32_cs.hpp> |
35 | #else |
36 | # include <boost/smart_ptr/detail/lwm_pthreads.hpp> |
37 | #endif |
38 | |
39 | #endif // #ifndef BOOST_SMART_PTR_DETAIL_LIGHTWEIGHT_MUTEX_HPP_INCLUDED |
40 | |