ACE
6.3.3
|
A helper class that helps grabbing, releasing and waiting on tokens for a thread that tries calling handle_events (). More...
#include <TP_Reactor.h>
Public Member Functions | |
ACE_TP_Token_Guard (ACE_Select_Reactor_Token &token) | |
Constructor that will grab the token for us. More... | |
~ACE_TP_Token_Guard (void) | |
void | release_token (void) |
Release the token .. More... | |
bool | is_owner (void) |
int | acquire_read_token (ACE_Time_Value *max_wait_time=0) |
int | acquire_token (ACE_Time_Value *max_wait_time=0) |
Private Member Functions | |
ACE_TP_Token_Guard (void) | |
ACE_TP_Token_Guard (const ACE_TP_Token_Guard &) | |
ACE_TP_Token_Guard & | operator= (const ACE_TP_Token_Guard &) |
Private Attributes | |
ACE_Select_Reactor_Token & | token_ |
The Select Reactor token. More... | |
bool | owner_ |
A helper class that helps grabbing, releasing and waiting on tokens for a thread that tries calling handle_events ().
In short, this class will be owned by one thread by creating on the stack. This class gives the status of the ownership of the token and manages the ownership
|
inline |
Constructor that will grab the token for us.
|
inline |
Destructor. This will release the token if it hasnt been released till this point
|
private |
|
private |
int ACE_TP_Token_Guard::acquire_read_token | ( | ACE_Time_Value * | max_wait_time = 0 | ) |
A helper method that grabs the token for us, after which the thread that owns that can do some actual work.
int ACE_TP_Token_Guard::acquire_token | ( | ACE_Time_Value * | max_wait_time = 0 | ) |
A helper method that grabs the token for us, after which the thread that owns that can do some actual work. This differs from acquire_read_token() as it uses acquire () to get the token instead of acquire_read ()
|
inline |
Returns whether the thread that created this object ownes the token or not.
|
private |
|
inline |
Release the token ..
|
private |
Flag that indicate whether the thread that created this object owns the token or not. A value of false indicates that this class hasn't got the token (and hence the thread) and a value of true vice-versa.
|
private |
The Select Reactor token.