Main Page Class Hierarchy Alphabetical List Compound List File List Compound Members File Members Related Pages

# ACE_Priority_Reactor Class Reference

Implements priority based dispatching. More...

`#include <Priority_Reactor.h>`

Inheritance diagram for ACE_Priority_Reactor

[legend]
Collaboration diagram for ACE_Priority_Reactor:

[legend]
List of all members.

## Public Methods
| ACE_Priority_Reactor (ACE_Sig_Handler * = 0, ACE_Timer_Queue * = 0)
| Initialize with the default size.
| ACE_Priority_Reactor (size_t size, int restart = 0, ACE_Sig_Handler * = 0, ACE_Timer_Queue * = 0)
| Initialize with size <size>.
virtual | ~ACE_Priority_Reactor (void)
| Close down the select_reactor and release all of its resources.
void | dump (void) const
| Dump the state of an object.
## Public Attributes
| ACE_ALLOC_HOOK_DECLARE
| Declare the dynamic allocation hooks.
## Protected Methods
virtual int | dispatch_io_set (int number_of_active_handles, int &number_dispatched, int mask, ACE_Handle_Set &dispatch_mask, ACE_Handle_Set &ready_mask, ACE_EH_PTMF callback)
| We simply override this function to implement the priority dispatching.
## Private Types
typedef ACE_Unbounded_Queue< ACE_Event_Tuple> | QUEUE
| There is a queue per-priority, which simply holds the Event_Handlers until we knwo who goes first.
## Private Methods
void | init_bucket (void)
| A small helper to initialize the bucket.
| ACE_Priority_Reactor (const ACE_Select_Reactor &)
| Deny access since member-wise won't work...
ACE_Priority_Reactor& | operator= (const ACE_Select_Reactor &)
## Private Attributes
QUEUE** | bucket_
ACE_Allocator* | tuple_allocator_
| The queues themselves use this allocator to minimize dynamic memory usage.

## Detailed Description

Implements priority based dispatching.

This class refines the dispatching mechanism for the Select_Reactor by taking advantage of the priority method on ACE_Event_Handler.

## Member Typedef Documentation

typedef ACE_Unbounded_Queue<ACE_Event_Tuple> ACE_Priority_Reactor::QUEUE`[private]`

| There is a queue per-priority, which simply holds the Event_Handlers until we knwo who goes first.

## Constructor & Destructor Documentation

ACE_Priority_Reactor::ACE_Priority_Reactor ( | ACE_Sig_Handler * sh = 0,
| ACE_Timer_Queue * tq = 0 )

| Initialize with the default size.

ACE_Priority_Reactor::ACE_Priority_Reactor ( | size_t size,
| int restart = 0,
| ACE_Sig_Handler * sh = 0,
| ACE_Timer_Queue * tq = 0 )

| Initialize with size <size>.

ACE_Priority_Reactor::~ACE_Priority_Reactor ( | void )`[virtual]`

| Close down the select_reactor and release all of its resources.

ACE_Priority_Reactor::ACE_Priority_Reactor ( | const ACE_Select_Reactor & )`[private]`

| Deny access since member-wise won't work...

## Member Function Documentation

int ACE_Priority_Reactor::dispatch_io_set ( | int number_of_active_handles,
| int & number_dispatched,
| int mask,
| ACE_Handle_Set & dispatch_mask,
| ACE_Handle_Set & ready_mask,
| ACE_EH_PTMF callback )`[protected, virtual]`

| We simply override this function to implement the priority dispatching. Reimplemented from ACE_Select_Reactor_T.

void ACE_Priority_Reactor::dump ( | void ) const`[virtual]`

| Dump the state of an object. Reimplemented from ACE_Select_Reactor_T.

void ACE_Priority_Reactor::init_bucket ( | void )`[private]`

| A small helper to initialize the bucket.

ACE_Priority_Reactor& ACE_Priority_Reactor::operator= ( | const ACE_Select_Reactor & )`[private]`

## Member Data Documentation

ACE_Priority_Reactor::ACE_ALLOC_HOOK_DECLARE

| Declare the dynamic allocation hooks. Reimplemented from ACE_Select_Reactor_T.

QUEUE ** ACE_Priority_Reactor::bucket_`[private]`

ACE_Allocator * ACE_Priority_Reactor::tuple_allocator_`[private]`

| The queues themselves use this allocator to minimize dynamic memory usage.

The documentation for this class was generated from the following files:

- Priority_Reactor.h
- Priority_Reactor.cpp