1 #ifndef _sys_windows_Mutex_h
2 #define _sys_windows_Mutex_h
24 #include <boost/version.hpp>
25 #if (BOOST_VERSION < 103500)
26 #error The Windows port requires Boost version 1.35.0 or later
29 #include <boost/noncopyable.hpp>
30 #include <boost/thread/recursive_mutex.hpp>
31 #include <boost/thread/shared_mutex.hpp>
32 #include <boost/thread/thread_time.hpp>
33 #include <boost/thread/tss.hpp>
43 class Mutex :
private boost::noncopyable {
64 class RWlock :
private boost::noncopyable {
83 inline bool &
write (
void);
103 #define QPID_MUTEX_INITIALIZER 0
114 return mutex.try_lock();
132 return mutex.try_lock();
143 bool &writer =
write();
149 bool &writer =
write();
155 bool &writer =
write();
163 bool &writer =
write();
166 boost::system_time
now = boost::get_system_time();
172 bool &writer =
write();
181 writePtr =
new bool(
false);