Boost  v1.57.0
doxygen for www.boost.org
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Modules Pages
once.hpp File Reference
#include <cstring>
#include <cstddef>
#include <boost/assert.hpp>
#include <boost/static_assert.hpp>
#include <boost/detail/interlocked.hpp>
#include <boost/thread/win32/thread_primitives.hpp>
#include <boost/thread/win32/interlocked_read.hpp>
#include <boost/core/no_exceptions_support.hpp>
#include <boost/thread/detail/move.hpp>
#include <boost/thread/detail/invoke.hpp>
#include <boost/bind.hpp>
#include <boost/config/abi_prefix.hpp>
#include <boost/config/abi_suffix.hpp>
Include dependency graph for once.hpp:

Classes

struct  boost::once_flag
 
struct  boost::detail::once_context
 

Namespaces

 boost
 Duration formatting facet for input.
 
 boost::detail
 

Macros

#define BOOST_ONCE_INIT   {0,0}
 
#define BOOST_THREAD_INVOKE_RET_VOID   boost::bind
 
#define BOOST_THREAD_INVOKE_RET_VOID_CALL   ()
 

Typedefs

typedef char boost::detail::once_char_type
 

Enumerations

enum  boost::detail::once_action {
  boost::detail::try_,
  boost::detail::break_,
  boost::detail::continue_
}
 

Functions

bool boost::detail::enter_once_region (once_flag &flag, once_context &ctx) BOOST_NOEXCEPT
 
void boost::detail::commit_once_region (once_flag &flag, once_context &ctx) BOOST_NOEXCEPT
 
void boost::detail::rollback_once_region (once_flag &flag, once_context &ctx) BOOST_NOEXCEPT
 
template<class I >
void boost::detail::int_to_string (I p, once_char_type *buf)
 
void boost::detail::name_once_mutex (once_char_type *mutex_name, void *flag_address)
 
void * boost::detail::open_once_event (once_char_type *mutex_name, void *flag_address)
 
void * boost::detail::create_once_event (once_char_type *mutex_name, void *flag_address)
 
void boost::call_once (once_flag &flag, void(*f)())
 
template<typename Function >
void boost::call_once (once_flag &flag, BOOST_THREAD_RV_REF(Function) f)
 
template<typename Function , class A , class... ArgTypes>
void boost::call_once (once_flag &flag, BOOST_THREAD_RV_REF(Function) f, BOOST_THREAD_RV_REF(A) a, BOOST_THREAD_RV_REF(ArgTypes)...args)
 

Variables

unsigned const boost::detail::once_mutex_name_fixed_length =54
 
unsigned const boost::detail::once_mutex_name_length
 

Macro Definition Documentation

#define BOOST_ONCE_INIT   {0,0}
#define BOOST_THREAD_INVOKE_RET_VOID   boost::bind

Referenced by boost::call_once().

#define BOOST_THREAD_INVOKE_RET_VOID_CALL   ()

Referenced by boost::call_once().