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.

Public Member Functions

 TAO_Thread_Pool_Manager (TAO_ORB_Core &orb_core)
 Constructor.
 ~TAO_Thread_Pool_Manager (void)
 Destructor.
void finalize (void)
 Finalize the resources.
void shutdown_reactor (void)
 Shutdown the reactor.
void wait (void)
 Wait for threads to exit.
int is_collocated (const TAO_MProfile &mprofile)
 Does mprofile belong to us?
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.
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.
void destroy_threadpool (RTCORBA::ThreadpoolId threadpool ACE_ENV_ARG_DECL) throw (CORBA::SystemException, RTCORBA::RTORB::InvalidThreadpool)
 Destroy a threadpool.

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  ) 
 

Does mprofile belong to us?

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 Wed Nov 23 16:14:01 2005 for TAO_RTCORBA by  doxygen 1.4.5