Rogue Wave banner
Previous fileTop of DocumentContentsIndexNext file

2.4 Interthread Communication Package

2.4.1 Description

The Interthread Communication package includes a family of templatized, value and pointer-based queue and stack classes that use producer-consumer synchronization semantics to coordinate multithread access. For more information about the Interthread Communication package, see Chapter 5 of the Threads.h++ User's Guide.

2.4.2 Interthread Communication Class Hierarchies

The producer-consumer classes are shown in Figure 6.

Figure 6 -- Producer-consumer class hierarchy

Figure 7 shows the IOU class hierarchy. All of these classes are in the Interthread Communication package, except the base classes and RWTThreadEscrowImp<Redeemable>, which is in the Threading package (see Section 2.8.3).

Figure 7 -- IOU class hierarchy

2.4.3 Index of Interthread Communication Classes

Table 6 contains an alphabetical listing of the public classes and global functions and macros in the Interthread Communication package.

Table 6 -- Index of Interthread Communication classes 

 
Class NameDescription
RWClosedException
An exception class that derives from RWTHRxmsg.
RWEscrowImpBase
Base class for RWTEscrowImp<Redeemable> class.
RWPCBufferBase
Base class for producer-consumer buffer classes.
RWTEscrowHandle<Redeemable>
Handle to RWTEscrowImp<Redeemable>.
RWTEscrowImp<Redeemable>
Common base class for IOU Escrow implementation classes.
RWTIOUEscrow<Redeemable>
The interface class for writing to an IOU.
RWTIOUResult<Redeemable>
The interface class for reading from an IOU.
RWTIOUTrap<Redeemable>
Used to wait for the next registered IOU, within a group of registered IOUs, to become redeemable.
rwtMakeIOUCallback
Global helper functions and macros that create functors that may be passed to the addCallback() method of an RWTIOUResult<R>.
RWTPCPtrBufferBase<Type>
Base class for pointer-based producer-consumer buffer classes.
RWTPCPtrQueue<Type>
Base class for pointer-based producer-consumer queue classes.
RWTPCPtrStack<Type>
Base class for pointer-based producer-consumer stack classes.
RWTPCValBufferBase<Type>
Base class for value-based producer-consumer buffer classes.
RWTPCValBufferBaseDecorated
<Type,Decorator>

Base class for decorated, value-based producer-consumer buffer classes.
RWTPCValBufferBaseGuarded
<Type,GuardDecorator>

Base class for guarded, value-based producer-consumer buffer classes.
RWTPCValBufferBaseGuardedPrioritized <Type,GuardAndPriorityDecorator>
Base class for guarded, prioritized, value-based producer-consumer buffer classes.
RWTPCValBufferBasePrioritized
<Type,PriorityDecorator>

Base class for prioritized, value-based, producer-consumer buffer classes.
RWTPCValQueue<Type>
Value-based queue with producer-consumer synchronization semantics.
RWTPCValQueueGuarded<Type>
Value-based queue with guarded, producer-consumer synchronization semantics.
RWTPCValQueueGuardedPrioritized<Type>
Value-based queue with guarded and prioritized producer-consumer synchronization semantics.
RWTPCValQueuePrioritized<Type>
Value-based queue with prioritized, producer-consumer synchronization semantics.
RWTPCValStack<Type>
Base class for value-based producer-consumer stack classes.
RWTPCValStackGuarded<Type>
Value-based stack with guarded, producer-consumer synchronization semantics.
RWTPCValStackGuardedPrioritized<Type>
Value-based stack with guarded and prioritized producer-consumer synchronization semantics.
RWTPCValStackPrioritized<Type>
Value-based stack with prioritized, producer-consumer synchronization semantics.



Previous fileTop of DocumentContentsIndexNext file

©Copyright 2000, Rogue Wave Software, Inc.
Contact Rogue Wave about documentation or support issues.