YACLib
C++ library for concurrent tasks execution
Loading...
Searching...
No Matches
yaclib::detail::fiber::ConditionVariable Class Reference

#include <condition_variable.hpp>

Public Types

using native_handle_type = std::condition_variable::native_handle_type
 

Public Member Functions

 ConditionVariable () noexcept=default
 
 ~ConditionVariable ()=default
 
 ConditionVariable (const ConditionVariable &)=delete
 
ConditionVariableoperator= (const ConditionVariable &)=delete
 
void notify_one () noexcept
 
void notify_all () noexcept
 
void wait (std::unique_lock< yaclib::detail::fiber::Mutex > &lock) noexcept
 
template<typename Predicate >
void wait (std::unique_lock< yaclib::detail::fiber::Mutex > &lock, Predicate predicate)
 
template<typename Clock , typename Duration >
WaitStatus wait_until (std::unique_lock< yaclib::detail::fiber::Mutex > &lock, const std::chrono::time_point< Clock, Duration > &time_point)
 
template<typename Clock , typename Duration , typename Predicate >
bool wait_until (std::unique_lock< yaclib::detail::fiber::Mutex > &lock, const std::chrono::time_point< Clock, Duration > &time_point, Predicate predicate)
 
template<typename Rep , typename Period >
WaitStatus wait_for (std::unique_lock< yaclib::detail::fiber::Mutex > &lock, const std::chrono::duration< Rep, Period > &duration)
 
template<typename Rep , typename Period , typename Predicate >
bool wait_for (std::unique_lock< yaclib::detail::fiber::Mutex > &lock, const std::chrono::duration< Rep, Period > &duration, Predicate predicate)
 
native_handle_type native_handle ()
 

Detailed Description

Definition at line 9 of file condition_variable.hpp.

Member Typedef Documentation

◆ native_handle_type

using yaclib::detail::fiber::ConditionVariable::native_handle_type = std::condition_variable::native_handle_type

Definition at line 52 of file condition_variable.hpp.

Constructor & Destructor Documentation

◆ ConditionVariable() [1/2]

yaclib::detail::fiber::ConditionVariable::ConditionVariable ( )
defaultnoexcept

◆ ~ConditionVariable()

yaclib::detail::fiber::ConditionVariable::~ConditionVariable ( )
default

◆ ConditionVariable() [2/2]

yaclib::detail::fiber::ConditionVariable::ConditionVariable ( const ConditionVariable )
delete

Member Function Documentation

◆ native_handle()

ConditionVariable::native_handle_type yaclib::detail::fiber::ConditionVariable::native_handle ( )

Definition at line 17 of file condition_variable.cpp.

◆ notify_all()

void yaclib::detail::fiber::ConditionVariable::notify_all ( )
noexcept

◆ notify_one()

void yaclib::detail::fiber::ConditionVariable::notify_one ( )
noexcept

◆ operator=()

ConditionVariable & yaclib::detail::fiber::ConditionVariable::operator= ( const ConditionVariable )
delete

◆ wait() [1/2]

void yaclib::detail::fiber::ConditionVariable::wait ( std::unique_lock< yaclib::detail::fiber::Mutex > &  lock)
noexcept

Definition at line 13 of file condition_variable.cpp.

◆ wait() [2/2]

template<typename Predicate >
void yaclib::detail::fiber::ConditionVariable::wait ( std::unique_lock< yaclib::detail::fiber::Mutex > &  lock,
Predicate  predicate 
)
inline

Definition at line 24 of file condition_variable.hpp.

References yaclib::MakeContract().

◆ wait_for() [1/2]

template<typename Rep , typename Period >
WaitStatus yaclib::detail::fiber::ConditionVariable::wait_for ( std::unique_lock< yaclib::detail::fiber::Mutex > &  lock,
const std::chrono::duration< Rep, Period > &  duration 
)
inline

Definition at line 41 of file condition_variable.hpp.

◆ wait_for() [2/2]

bool yaclib::detail::fiber::ConditionVariable::wait_for ( std::unique_lock< yaclib::detail::fiber::Mutex > &  lock,
const std::chrono::duration< Rep, Period > &  duration,
Predicate  predicate 
)
inline

Definition at line 47 of file condition_variable.hpp.

References yaclib::MakeContract().

◆ wait_until() [1/2]

WaitStatus yaclib::detail::fiber::ConditionVariable::wait_until ( std::unique_lock< yaclib::detail::fiber::Mutex > &  lock,
const std::chrono::time_point< Clock, Duration > &  time_point 
)
inline

Definition at line 29 of file condition_variable.hpp.

◆ wait_until() [2/2]

bool yaclib::detail::fiber::ConditionVariable::wait_until ( std::unique_lock< yaclib::detail::fiber::Mutex > &  lock,
const std::chrono::time_point< Clock, Duration > &  time_point,
Predicate  predicate 
)
inline

Definition at line 35 of file condition_variable.hpp.

References yaclib::MakeContract().


The documentation for this class was generated from the following files: