Main Page   Namespace List   Class Hierarchy   Alphabetical List   Compound List   File List   Namespace Members   Compound Members   File Members  

TAO_Thread_Pool_Manager Class Reference

Class for managing thread pools. More...

#include <Thread_Pool.h>

Collaboration diagram for TAO_Thread_Pool_Manager:

Collaboration graph
[legend]
List of all members.

Accessors

ACE_SYNCH_MUTEXlock (void)
TAO_ORB_Coreorb_core (void) const
THREAD_POOLSthread_pools (void)

Helpers

RTCORBA::ThreadpoolId create_threadpool_i (CORBA::ULong stacksize, CORBA::ULong static_threads, CORBA::ULong dynamic_threads, RTCORBA::Priority default_priority, CORBA::Boolean allow_request_buffering, CORBA::ULong max_buffered_requests, CORBA::ULong max_request_buffer_size ACE_ENV_ARG_DECL) throw (CORBA::SystemException)
RTCORBA::ThreadpoolId create_threadpool_with_lanes_i (CORBA::ULong stacksize, const RTCORBA::ThreadpoolLanes &lanes, CORBA::Boolean allow_borrowing, CORBA::Boolean allow_request_buffering, CORBA::ULong max_buffered_requests, CORBA::ULong max_request_buffer_size ACE_ENV_ARG_DECL) throw (CORBA::SystemException)
void destroy_threadpool_i (RTCORBA::ThreadpoolId threadpool ACE_ENV_ARG_DECL) throw (CORBA::SystemException, RTCORBA::RTORB::InvalidThreadpool)
RTCORBA::ThreadpoolId create_threadpool_helper (TAO_Thread_Pool *thread_pool ACE_ENV_ARG_DECL) throw (CORBA::SystemException)

Public Types

typedef ACE_Hash_Map_Manager<
RTCORBA::ThreadpoolId, TAO_Thread_Pool *,
ACE_Null_Mutex
THREAD_POOLS
 Collection of thread pools. More...


Public Methods

 TAO_Thread_Pool_Manager (TAO_ORB_Core &orb_core)
 Constructor. More...

 ~TAO_Thread_Pool_Manager (void)
 Destructor. More...

void finalize (void)
 Finalize the resources. More...

void shutdown_reactor (void)
 Shutdown the reactor. More...

void wait (void)
 Wait for threads to exit. More...

int is_collocated (const TAO_MProfile &mprofile)
RTCORBA::ThreadpoolId create_threadpool (CORBA::ULong stacksize, CORBA::ULong static_threads, CORBA::ULong dynamic_threads, RTCORBA::Priority default_priority, CORBA::Boolean allow_request_buffering, CORBA::ULong max_buffered_requests, CORBA::ULong max_request_buffer_size ACE_ENV_ARG_DECL) throw (CORBA::SystemException)
 Create a threadpool without lanes. More...

RTCORBA::ThreadpoolId create_threadpool_with_lanes (CORBA::ULong stacksize, const RTCORBA::ThreadpoolLanes &lanes, CORBA::Boolean allow_borrowing, CORBA::Boolean allow_request_buffering, CORBA::ULong max_buffered_requests, CORBA::ULong max_request_buffer_size ACE_ENV_ARG_DECL) throw (CORBA::SystemException)
 Create a threadpool with lanes. More...

void destroy_threadpool (RTCORBA::ThreadpoolId threadpool ACE_ENV_ARG_DECL) throw (CORBA::SystemException, RTCORBA::RTORB::InvalidThreadpool)
 Destroy a threadpool. More...


Private Attributes

TAO_ORB_Coreorb_core_
THREAD_POOLS thread_pools_
RTCORBA::ThreadpoolId thread_pool_id_counter_
ACE_SYNCH_MUTEX lock_

Detailed Description

Class for managing thread pools.


Member Typedef Documentation

typedef ACE_Hash_Map_Manager<RTCORBA::ThreadpoolId, TAO_Thread_Pool *, ACE_Null_Mutex> TAO_Thread_Pool_Manager::THREAD_POOLS
 

Collection of thread pools.


Constructor & Destructor Documentation

TAO_Thread_Pool_Manager::TAO_Thread_Pool_Manager TAO_ORB_Core   orb_core
 

Constructor.

TAO_Thread_Pool_Manager::~TAO_Thread_Pool_Manager void   
 

Destructor.


Member Function Documentation

RTCORBA::ThreadpoolId TAO_Thread_Pool_Manager::create_threadpool CORBA::ULong    stacksize,
CORBA::ULong    static_threads,
CORBA::ULong    dynamic_threads,
RTCORBA::Priority    default_priority,
CORBA::Boolean    allow_request_buffering,
CORBA::ULong    max_buffered_requests,
CORBA::ULong max_request_buffer_size    ACE_ENV_ARG_DECL
throw (CORBA::SystemException)
 

Create a threadpool without lanes.

RTCORBA::ThreadpoolId TAO_Thread_Pool_Manager::create_threadpool_helper TAO_Thread_Pool *thread_pool    ACE_ENV_ARG_DECL throw (CORBA::SystemException) [private]
 

RTCORBA::ThreadpoolId TAO_Thread_Pool_Manager::create_threadpool_i CORBA::ULong    stacksize,
CORBA::ULong    static_threads,
CORBA::ULong    dynamic_threads,
RTCORBA::Priority    default_priority,
CORBA::Boolean    allow_request_buffering,
CORBA::ULong    max_buffered_requests,
CORBA::ULong max_request_buffer_size    ACE_ENV_ARG_DECL
throw (CORBA::SystemException) [private]
 

RTCORBA::ThreadpoolId TAO_Thread_Pool_Manager::create_threadpool_with_lanes CORBA::ULong    stacksize,
const RTCORBA::ThreadpoolLanes   lanes,
CORBA::Boolean    allow_borrowing,
CORBA::Boolean    allow_request_buffering,
CORBA::ULong    max_buffered_requests,
CORBA::ULong max_request_buffer_size    ACE_ENV_ARG_DECL
throw (CORBA::SystemException)
 

Create a threadpool with lanes.

RTCORBA::ThreadpoolId TAO_Thread_Pool_Manager::create_threadpool_with_lanes_i CORBA::ULong    stacksize,
const RTCORBA::ThreadpoolLanes   lanes,
CORBA::Boolean    allow_borrowing,
CORBA::Boolean    allow_request_buffering,
CORBA::ULong    max_buffered_requests,
CORBA::ULong max_request_buffer_size    ACE_ENV_ARG_DECL
throw (CORBA::SystemException) [private]
 

void TAO_Thread_Pool_Manager::destroy_threadpool RTCORBA::ThreadpoolId threadpool    ACE_ENV_ARG_DECL throw (CORBA::SystemException, RTCORBA::RTORB::InvalidThreadpool)
 

Destroy a threadpool.

void TAO_Thread_Pool_Manager::destroy_threadpool_i RTCORBA::ThreadpoolId threadpool    ACE_ENV_ARG_DECL throw (CORBA::SystemException, RTCORBA::RTORB::InvalidThreadpool) [private]
 

void TAO_Thread_Pool_Manager::finalize void   
 

Finalize the resources.

int TAO_Thread_Pool_Manager::is_collocated const TAO_MProfile   mprofile
 

ACE_SYNCH_MUTEX & TAO_Thread_Pool_Manager::lock void   
 

TAO_ORB_Core & TAO_Thread_Pool_Manager::orb_core void    const
 

void TAO_Thread_Pool_Manager::shutdown_reactor void   
 

Shutdown the reactor.

TAO_Thread_Pool_Manager::THREAD_POOLS & TAO_Thread_Pool_Manager::thread_pools void   
 

void TAO_Thread_Pool_Manager::wait void   
 

Wait for threads to exit.


Member Data Documentation

ACE_SYNCH_MUTEX TAO_Thread_Pool_Manager::lock_ [private]
 

TAO_ORB_Core& TAO_Thread_Pool_Manager::orb_core_ [private]
 

RTCORBA::ThreadpoolId TAO_Thread_Pool_Manager::thread_pool_id_counter_ [private]
 

THREAD_POOLS TAO_Thread_Pool_Manager::thread_pools_ [private]
 


The documentation for this class was generated from the following files:
Generated on Thu Oct 10 20:34:24 2002 for TAO_RTCORBA by doxygen1.2.13.1 written by Dimitri van Heesch, © 1997-2001