Proxy for acquiring, renewing, and releasing a distributed synchronization token.
More...
|
| ACE_Remote_Token_Proxy () |
| Null construction. More...
|
|
virtual | ~ACE_Remote_Token_Proxy () |
| Death. More...
|
|
int | open (const ACE_TCHAR *name, int ignore_deadlock=0, int debug=0) |
|
int | initiate_connection () |
|
virtual int | acquire (int notify=0, void(*sleep_hook)(void *)=0, ACE_Synch_Options &options=ACE_Synch_Options::synch) |
|
virtual int | tryacquire (void(*sleep_hook)(void *)=0) |
|
virtual int | renew (int requeue_position=0, ACE_Synch_Options &options=ACE_Synch_Options::synch) |
|
virtual int | release (ACE_Synch_Options &options=ACE_Synch_Options::synch) |
|
virtual int | remove (ACE_Synch_Options &options=ACE_Synch_Options::synch) |
|
virtual void | token_acquired (ACE_TPQ_Entry *) |
| Override the default to do nothing. More...
|
|
virtual const ACE_TCHAR * | owner_id () |
| The client id of the current token holder. More...
|
|
void | dump () const |
| Dump the state of the class. More...
|
|
| ACE_Token_Proxy () |
| Construction. More...
|
|
virtual | ~ACE_Token_Proxy () |
| Destructor. More...
|
|
virtual int | open (const ACE_TCHAR *name, int ignore_deadlock=0, int debug=0) |
|
virtual int | acquire (int notify=0, void(*sleep_hook)(void *)=0, ACE_Synch_Options &options=ACE_Synch_Options::defaults) |
|
virtual int | renew (int requeue_position=-1, ACE_Synch_Options &options=ACE_Synch_Options::defaults) |
| Calls renew on the token. Blocks the calling thread if would block. More...
|
|
virtual int | tryacquire (void(*sleep_hook)(void *)=0) |
| Calls renew on the token. More...
|
|
virtual int | release (ACE_Synch_Options &options=ACE_Synch_Options::defaults) |
| Calls release on the token. More...
|
|
virtual int | remove (ACE_Synch_Options &options=ACE_Synch_Options::defaults) |
| Calls remove on the token. More...
|
|
virtual int | acquire_read (int notify=0, void(*sleep_hook)(void *)=0, ACE_Synch_Options &options=ACE_Synch_Options::defaults) |
|
virtual int | acquire_write (int notify=0, void(*sleep_hook)(void *)=0, ACE_Synch_Options &options=ACE_Synch_Options::defaults) |
|
virtual int | tryacquire_read (void(*sleep_hook)(void *)=0) |
|
virtual int | tryacquire_write (void(*sleep_hook)(void *)=0) |
|
virtual const ACE_TCHAR * | client_id () const |
|
virtual void | client_id (const ACE_TCHAR *client_id) |
|
virtual const ACE_TCHAR * | name () const |
|
virtual void | sleep_hook () |
|
virtual void | token_acquired (ACE_TPQ_Entry *) |
|
virtual const ACE_TCHAR * | owner_id () |
| The client id of the current token holder. More...
|
|
virtual ACE_Token_Proxy * | clone () const =0 |
| Return a dynamically allocated clone of the derived class. More...
|
|
void | dump () const |
| Dump the state of the class. More...
|
|
virtual int | type () const |
|
Proxy for acquiring, renewing, and releasing a distributed synchronization token.
The Remote_Token_Proxy class implements the mechanisms for distributed token operations. It is similar to the ACE_Token_Proxy.
- Todo:
- Distributed sleep_hooks have not been implemented. <owner_id> is not implemented.
Renew the token by offering to release it if there are any other waiters, otherwise get the token back immediately. This renew has the same semantics as ACE_Local_Mutex release. It is semantically equivalent to release() followed by acquire(), but it is faster. options contains the timeout value used if renew blocks. As with acquire, the timer is maintained at the token server. If there are waiters and requeue_position == -1, the caller is queued at the rear of the waiter list. Otherwise, requeue_position specifies the number of waiters to "let by" before reacquiring the token (effectively, the position in the waiter list.)
Reimplemented from ACE_Token_Proxy.