NAME

ACE_Token_Proxy_Queue - Token waiter list.

SYNOPSIS

#include <ace/Local_Tokens.h>

class ACE_Token_Proxy_Queue { public: friend class ACE_TPQ_Iterator; ACE_Token_Proxy_Queue (void); ~ACE_Token_Proxy_Queue (void); void enqueue (ACE_TPQ_Entry* new_entry, int position); const ACE_TPQ_Entry* head (void); void dequeue (void); void remove (const ACE_TPQ_Entry *remove_me); int size (void); void dump (void) const; protected: ACE_TPQ_Entry *head_; ACE_TPQ_Entry *tail_; int size_; };

DESCRIPTION

This file contains definitions for the following classes:

public: 7. ACE_Token_Proxy 8. ACE_Null_Token : public ACE_Token_Proxy 9. ACE_Local_Mutex : public ACE_Token_Proxy *. ACE_Local_RLock : public ACE_Local_Mutex &. ACE_Local_WLock : public ACE_Local_Mutex private: 1. ACE_TOKEN_CONST 3. ACE_TPQ_Entry b. ACE_TSS_TPQ_Entry c. ACE_TPQ_Iterator 4. ACE_Token_Proxy_Queue 5. ACE_Tokens 6. ACE_Mutex_Token : public ACE_Tokens 12. ACE_RW_Token : public ACE_Tokens a. ACE_Token_Name

Note that the locking classes defined in this file are *not* intended to be used as general-purpose synchronization mechanisms, such as mutexes or semaphores. Instead, you should use the ACE_Recursive_Thread_Mutex, ACE_Thread_Mutex, ACE_Thread_Semaphore, etc., that are defined in $ACE_ROOT/ace/Synch.h and $ACE_ROOT/ace/Synch_T.h or the ACE_Token that's defined in $ACE_ROOT/ace/Token.h.

PUBLIC MEMBERS

friend class ACE_TPQ_Iterator;

ACE_Token_Proxy_Queue (void);

~ACE_Token_Proxy_Queue (void);

void enqueue (ACE_TPQ_Entry* new_entry, int position);

const ACE_TPQ_Entry* head (void);

void dequeue (void);

void remove (const ACE_TPQ_Entry *remove_me);

int size (void);

void dump (void) const;

PROTECTED MEMBERS

ACE_TPQ_Entry *head_;

ACE_TPQ_Entry *tail_;

int size_;

AUTHOR

Karl-Heinz Dorn kdorn@erlh.siemens.de, Douglas C. Schmidt schmidt@cs.wustl.edu, and Tim Harrison harrison@cs.wustl.edu

LIBRARY

ace