diff options
author | Chris Cleeland <chris.cleeland@gmail.com> | 2006-11-08 19:17:49 +0000 |
---|---|---|
committer | Chris Cleeland <chris.cleeland@gmail.com> | 2006-11-08 19:17:49 +0000 |
commit | d9ca80311fa2b9595ae36eaadb9a8e816706f148 (patch) | |
tree | 6ff62ad738fced33a8eddaf2a95973ca3a9470cc /TAO/orbsvcs/orbsvcs/Event/EC_TPC_Dispatching.h | |
parent | 9ef3b09874c19f5586f2fe04d9a69ee816be0ecc (diff) | |
download | ATCD-d9ca80311fa2b9595ae36eaadb9a8e816706f148.tar.gz |
Committing changes for OCI RT 8089: changes to permit specifying thread
creation flags for thread-per-consumer (TPC) dispatch strategy in the RTEC.
Diffstat (limited to 'TAO/orbsvcs/orbsvcs/Event/EC_TPC_Dispatching.h')
-rw-r--r-- | TAO/orbsvcs/orbsvcs/Event/EC_TPC_Dispatching.h | 20 |
1 files changed, 19 insertions, 1 deletions
diff --git a/TAO/orbsvcs/orbsvcs/Event/EC_TPC_Dispatching.h b/TAO/orbsvcs/orbsvcs/Event/EC_TPC_Dispatching.h index b8c7ea49cd3..d507f3f5c1d 100644 --- a/TAO/orbsvcs/orbsvcs/Event/EC_TPC_Dispatching.h +++ b/TAO/orbsvcs/orbsvcs/Event/EC_TPC_Dispatching.h @@ -39,7 +39,11 @@ class TAO_EC_Event_Channel_Base; class TAO_RTEvent_Serv_Export TAO_EC_TPC_Dispatching : public TAO_EC_Dispatching { public: - TAO_EC_TPC_Dispatching (TAO_EC_Queue_Full_Service_Object* so); + TAO_EC_TPC_Dispatching (int nthreads, + int thread_creation_flags, + int thread_priority, + int force_activate, + TAO_EC_Queue_Full_Service_Object* so); ~TAO_EC_TPC_Dispatching (); // = The EC_Dispatching methods. @@ -63,6 +67,20 @@ private: // Use our own thread manager ACE_Thread_Manager thread_manager_; + /// The number of active tasks + int nthreads_; + + /// The flags (THR_BOUND, THR_NEW_LWP, etc.) used to create the + /// dispatching threads. + int thread_creation_flags_; + + /// The priority of the dispatching threads. + int thread_priority_; + + /// If activation at the requested priority fails then we fallback on + /// the defaults for thread activation. + int force_activate_; + typedef ACE_Hash_Map_Manager_Ex<RtecEventComm::PushConsumer_ptr,TAO_EC_Dispatching_Task*,ACE_Pointer_Hash<RtecEventComm::PushConsumer_ptr>,ACE_Equal_To<RtecEventComm::PushConsumer_ptr>,ACE_Null_Mutex> MAPTYPE; // Tweak the default size of this map by #defining |