Back to home page

EIC code displayed by LXR

 
 

    


File indexing completed on 2026-03-30 08:05:00

0001 //////////////////////////////////////////////////////////////////////////////
0002 //
0003 // (C) Copyright Ion Gaztanaga 2005-2012. Distributed under the Boost
0004 // Software License, Version 1.0. (See accompanying file
0005 // LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
0006 //
0007 // See http://www.boost.org/libs/interprocess for documentation.
0008 //
0009 //////////////////////////////////////////////////////////////////////////////
0010 
0011 #ifndef BOOST_INTERPROCESS_LOCK_OPTIONS_HPP
0012 #define BOOST_INTERPROCESS_LOCK_OPTIONS_HPP
0013 
0014 #ifndef BOOST_CONFIG_HPP
0015 #  include <boost/config.hpp>
0016 #endif
0017 0018 ">#
0019 #if defined(BOOST_HAS_PRAGMA_ONCE)
0020 #  pragma once
0021 #endif
0022 
0023 #include <boost/interprocess/detail/config_begin.hpp>
0024 #include <boost/interprocess/detail/workaround.hpp>
0025 
0026 //!\file
0027 //!Describes the lock options with associated with interprocess_mutex lock constructors.
0028 
0029 namespace boost {
0030 namespace interprocess {
0031 
0032 //!Type to indicate to a mutex lock constructor that must not lock the mutex.
0033 struct defer_lock_type{};
0034 //!Type to indicate to a mutex lock constructor that must try to lock the mutex.
0035 struct try_to_lock_type {};
0036 //!Type to indicate to a mutex lock constructor that the mutex is already locked.
0037 struct accept_ownership_type{};
0038 
0039 //!An object indicating that the locking
0040 //!must be deferred.
0041 static const defer_lock_type      defer_lock      = defer_lock_type();
0042 
0043 //!An object indicating that a try_lock()
0044 //!operation must be executed.
0045 static const try_to_lock_type     try_to_lock    = try_to_lock_type();
0046 
0047 //!An object indicating that the ownership of lockable
0048 //!object must be accepted by the new owner.
0049 static const accept_ownership_type  accept_ownership = accept_ownership_type();
0050 
0051 } // namespace interprocess {
0052 } // namespace boost{
0053 
0054 #include <boost/interprocess/detail/config_end.hpp>
0055 
0056 #endif // BOOST_INTERPROCESS_LOCK_OPTIONS_HPP