NAME

ACE_Remote_Token_Proxy - Proxy for acquiring, renewing, and releasing a distributed synchronization token.

SYNOPSIS


#include <ACE/Remote_Tokens.h>


class ACE_Remote_Token_Proxy : public ACE_Token_Proxy
{
  public:
    ACE_Remote_Token_Proxy (void);
    virtual ~ACE_Remote_Token_Proxy (void);
    int open (
        const char *name,
        int ignore_deadlock = 0,
        int debug = 0
        );
    int initiate_connection (void);
    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
        );
    ACE_Synch_Options::synch);
    ACE_Synch_Options::synch);
    virtual void token_acquired (ACE_TPQ_Entry *);
    virtual const char* owner_id (void);
    static void set_server_address (
        const ACE_INET_Addr &server_address
        );
    void dump (void) const;
  protected:
    int ignore_shadow_deadlock_;
    int request_reply (
        ACE_Token_Request &request,
        ACE_Synch_Options &options
        );
};

DESCRIPTION

The Remote_Token_Proxy class implements the mechanisms for distributed token operations. It is similar to the ACE_Token_Proxy.

PUBLIC MEMBERS

ACE_Remote_Token_Proxy (void);
virtual ~ACE_Remote_Token_Proxy (void);
int open (const char *name, int ignore_deadlock = 0, int debug = 0);
int initiate_connection (void);
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
    );
ACE_Synch_Options::synch);
ACE_Synch_Options::synch);
virtual void token_acquired (ACE_TPQ_Entry *);
virtual const char* owner_id (void);
static void set_server_address (const ACE_INET_Addr &server_address);
void dump (void) const;

PROTECTED MEMBERS

int ignore_shadow_deadlock_;
int request_reply (
    ACE_Token_Request &request,
    ACE_Synch_Options &options
    );

AUTHOR

Douglas C. Schmidt (schmidt@cs.wustl.edu) and Tim Harrison (harrison@cs.wustl.edu)

BUGS

Distributed sleep_hooks have not been implemented. owner_id () is not implemented.

LIBRARY

ACE