You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and dots ('.'), can be up to 35 characters long. Letters must be lowercase.
55 lines
1.8 KiB
55 lines
1.8 KiB
////////////////////////////////////////////////////////////////////////////// |
|
// |
|
// (C) Copyright Ion Gaztanaga 2005-2009. Distributed under the Boost |
|
// Software License, Version 1.0. (See accompanying file |
|
// LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) |
|
// |
|
// See http://www.boost.org/libs/interprocess for documentation. |
|
// |
|
////////////////////////////////////////////////////////////////////////////// |
|
|
|
#ifndef BOOST_INTERPROCESS_LOCK_OPTIONS_HPP |
|
#define BOOST_INTERPROCESS_LOCK_OPTIONS_HPP |
|
|
|
#if (defined _MSC_VER) && (_MSC_VER >= 1200) |
|
# pragma once |
|
#endif |
|
|
|
#include <boost/interprocess/detail/config_begin.hpp> |
|
#include <boost/interprocess/detail/workaround.hpp> |
|
|
|
//!\file |
|
//!Describes the lock options with associated with interprocess_mutex lock constructors. |
|
|
|
namespace boost { |
|
|
|
namespace posix_time |
|
{ class ptime; } |
|
|
|
namespace interprocess { |
|
|
|
//!Type to indicate to a mutex lock constructor that must not lock the mutex. |
|
struct defer_lock_type{}; |
|
//!Type to indicate to a mutex lock constructor that must try to lock the mutex. |
|
struct try_to_lock_type {}; |
|
//!Type to indicate to a mutex lock constructor that the mutex is already locked. |
|
struct accept_ownership_type{}; |
|
|
|
//!An object indicating that the locking |
|
//!must be deferred. |
|
static const defer_lock_type defer_lock = defer_lock_type(); |
|
|
|
//!An object indicating that a try_lock() |
|
//!operation must be executed. |
|
static const try_to_lock_type try_to_lock = try_to_lock_type(); |
|
|
|
//!An object indicating that the ownership of lockable |
|
//!object must be accepted by the new owner. |
|
static const accept_ownership_type accept_ownership = accept_ownership_type(); |
|
|
|
} // namespace interprocess { |
|
} // namespace boost{ |
|
|
|
#include <boost/interprocess/detail/config_end.hpp> |
|
|
|
#endif // BOOST_INTERPROCESS_LOCK_OPTIONS_HPP
|
|
|