diff options
author | nanbor <nanbor@ae88bc3d-4319-0410-8dbf-d08b4c9d3795> | 1998-12-11 22:08:29 +0000 |
---|---|---|
committer | nanbor <nanbor@ae88bc3d-4319-0410-8dbf-d08b4c9d3795> | 1998-12-11 22:08:29 +0000 |
commit | 633ad54598ca632c79183408c89d19b86063f621 (patch) | |
tree | 4082f9a505c1ec5a40e90902feaf3e08eb8b8527 /ace/Message_Queue.h | |
parent | 7d782e52ee73d92b643044aa7c9e6950ff1e3576 (diff) | |
download | ATCD-633ad54598ca632c79183408c89d19b86063f621.tar.gz |
Added enqueue_tail and dequeue_head
Diffstat (limited to 'ace/Message_Queue.h')
-rw-r--r-- | ace/Message_Queue.h | 11 |
1 files changed, 8 insertions, 3 deletions
diff --git a/ace/Message_Queue.h b/ace/Message_Queue.h index 76f7b05467c..2d084b1c918 100644 --- a/ace/Message_Queue.h +++ b/ace/Message_Queue.h @@ -70,11 +70,15 @@ public: // when a signal occurs, or if the time specified in timeout // elapses, (in which case errno = EWOULDBLOCK). + virtual int enqueue_tail (ACE_Message_Block *new_item, + ACE_Time_Value *timeout = 0) = 0; virtual int enqueue (ACE_Message_Block *new_item, ACE_Time_Value *timeout = 0) = 0; // Enqueue a <ACE_Message_Block *> into the tail of the queue. // Return -1 on failure, number of items in queue otherwise. + virtual int dequeue_head (ACE_Message_Block *&first_item, + ACE_Time_Value *timeout = 0) = 0; virtual int dequeue (ACE_Message_Block *&first_item, ACE_Time_Value *timeout = 0) = 0; // Dequeue and return the <ACE_Message_Block *> at the head of the @@ -289,9 +293,6 @@ class ACE_Export ACE_Message_Queue_NT : public ACE_Message_Queue_Base // * peek_dequeue_head (). // * ACE_Message_Queue_Iterators. // * No flow control. - // * Message_Block chains. The continuation field of ACE_Message_Block - // * is ignored; only the first block of a fragment chain is - // * recognized. public: // = Initialization and termination methods. ACE_Message_Queue_NT (size_t max_threads = ACE_Message_Queue_Base::DEFAULT_HWM); @@ -311,12 +312,16 @@ public: // = Enqueue and dequeue methods. + virtual int enqueue_tail (ACE_Message_Block *new_item, + ACE_Time_Value *timeout = 0); virtual int enqueue (ACE_Message_Block *new_item, ACE_Time_Value *timeout = 0); // Enqueue an <ACE_Message_Block *> at the end of the queue. // Returns -1 on failure, else the number of items still on the // queue. + virtual int dequeue_head (ACE_Message_Block *&first_item, + ACE_Time_Value *timeout = 0); virtual int dequeue (ACE_Message_Block *&first_item, ACE_Time_Value *timeout = 0); // Dequeue and return the <ACE_Message_Block *> at the head of the |