ACE  6.4.2
Public Member Functions | Public Attributes | List of all members
ACE_Token::ACE_Token_Queue_Entry Struct Reference

#include <Token.h>

Collaboration diagram for ACE_Token::ACE_Token_Queue_Entry:
Collaboration graph
[legend]

Public Member Functions

 ACE_Token_Queue_Entry (ACE_Thread_Mutex &m, ACE_thread_t t_id)
 Constructor. More...
 
 ACE_Token_Queue_Entry (ACE_Thread_Mutex &m, ACE_thread_t t_id, ACE_Condition_Attributes &attributes)
 Constructor using a pre-allocated attributes. More...
 
int wait (ACE_Time_Value *timeout, ACE_Thread_Mutex &lock)
 Entry blocks on the token. More...
 
int signal (void)
 Notify (unblock) the entry. More...
 

Public Attributes

ACE_Token_Queue_Entrynext_
 Pointer to next waiter. More...
 
ACE_thread_t thread_id_
 ACE_Thread id of this waiter. More...
 
ACE_Semaphore cv_
 ACE_Semaphore object used to wake up waiter when it can run again. More...
 
int runable_
 Ok to run. More...
 

Detailed Description

The following structure implements a LIFO/FIFO queue of waiter threads that are asleep waiting to obtain the token.

Constructor & Destructor Documentation

ACE_Token::ACE_Token_Queue_Entry::ACE_Token_Queue_Entry ( ACE_Thread_Mutex m,
ACE_thread_t  t_id 
)

Constructor.

ACE_Token::ACE_Token_Queue_Entry::ACE_Token_Queue_Entry ( ACE_Thread_Mutex m,
ACE_thread_t  t_id,
ACE_Condition_Attributes attributes 
)

Constructor using a pre-allocated attributes.

Member Function Documentation

int ACE_Token::ACE_Token_Queue_Entry::signal ( void  )
inline

Notify (unblock) the entry.

int ACE_Token::ACE_Token_Queue_Entry::wait ( ACE_Time_Value timeout,
ACE_Thread_Mutex lock 
)
inline

Entry blocks on the token.

Member Data Documentation

ACE_Semaphore ACE_Token::ACE_Token_Queue_Entry::cv_

ACE_Semaphore object used to wake up waiter when it can run again.

ACE_Token_Queue_Entry* ACE_Token::ACE_Token_Queue_Entry::next_

Pointer to next waiter.

int ACE_Token::ACE_Token_Queue_Entry::runable_

Ok to run.

ACE_thread_t ACE_Token::ACE_Token_Queue_Entry::thread_id_

ACE_Thread id of this waiter.


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