STLdoc
STLdocumentation
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros
Public Member Functions | Private Member Functions | Private Attributes | List of all members
Concurrency::details::_Condition_variable Class Reference

A _Condition_variable which is explicitly aware of the Concurrency Runtime. More...

#include <concrt.h>

Public Member Functions

_CRTIMP _Condition_variable ()
 Constructs a new _Condition_variable. More...
 
_CRTIMP ~_Condition_variable ()
 Destroys a _Condition_variable. More...
 
_CRTIMP void wait (Concurrency::critical_section &_Lck)
 Waits for the _Condition_variable to become signaled. The lock argument passed in is unlocked by the _Condition_variable and relocked before the wait returns. More...
 
_CRTIMP bool wait_for (Concurrency::critical_section &_Lck, unsigned int _Timeout=COOPERATIVE_TIMEOUT_INFINITE)
 Waits for the _Condition_variable to become signaled. The lock argument passed in is unlocked by the _Condition_variable and relocked before the wait returns. More...
 
_CRTIMP void notify_one ()
 Notify a single waiter of the _Condition_variable. More...
 
_CRTIMP void notify_all ()
 Notify all the waiters of the _Condition_variable. More...
 

Private Member Functions

 _Condition_variable (const _Condition_variable &_Event)
 
_Condition_variableoperator= (const _Condition_variable &_Event)
 

Private Attributes

void *volatile _M_pWaitChain
 
Concurrency::critical_section _M_lock
 

Detailed Description

A _Condition_variable which is explicitly aware of the Concurrency Runtime.

Constructor & Destructor Documentation

_CRTIMP Concurrency::details::_Condition_variable::_Condition_variable ( )

Constructs a new _Condition_variable.

_CRTIMP Concurrency::details::_Condition_variable::~_Condition_variable ( )

Destroys a _Condition_variable.

Concurrency::details::_Condition_variable::_Condition_variable ( const _Condition_variable _Event)
private

Member Function Documentation

_CRTIMP void Concurrency::details::_Condition_variable::notify_all ( )

Notify all the waiters of the _Condition_variable.

_CRTIMP void Concurrency::details::_Condition_variable::notify_one ( )

Notify a single waiter of the _Condition_variable.

_Condition_variable& Concurrency::details::_Condition_variable::operator= ( const _Condition_variable _Event)
private
_CRTIMP void Concurrency::details::_Condition_variable::wait ( Concurrency::critical_section _Lck)

Waits for the _Condition_variable to become signaled. The lock argument passed in is unlocked by the _Condition_variable and relocked before the wait returns.

Parameters
_LckThe critical_section to unlock before waiting and relock before the wait returns.
See also
critical_section Class
_CRTIMP bool Concurrency::details::_Condition_variable::wait_for ( Concurrency::critical_section _Lck,
unsigned int  _Timeout = COOPERATIVE_TIMEOUT_INFINITE 
)

Waits for the _Condition_variable to become signaled. The lock argument passed in is unlocked by the _Condition_variable and relocked before the wait returns.

Parameters
_LckThe critical_section to unlock before waiting and relock before the wait returns.
_TimeoutA timeout, in milliseconds, for how long to wait for.
See also
critical_section Class

Member Data Documentation

Concurrency::critical_section Concurrency::details::_Condition_variable::_M_lock
private
void* volatile Concurrency::details::_Condition_variable::_M_pWaitChain
private

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