#include <Strategies_T.h>
Public Types | |
typedef ACE_Concurrency_Strategy < SVC_HANDLER > | base_type |
Public Member Functions | |
ACE_Thread_Strategy (int flags=0) | |
"Do-nothing constructor" | |
ACE_Thread_Strategy (ACE_Thread_Manager *tm, long thr_flags, int n_threads=1, int flags=0) | |
Initialize the strategy. | |
virtual int | open (ACE_Thread_Manager *tm, long thr_flags, int n_threads=1, int flags=0) |
Initialize the strategy. | |
virtual | ~ACE_Thread_Strategy (void) |
virtual int | activate_svc_handler (SVC_HANDLER *svc_handler, void *arg=0) |
void | dump (void) const |
Dump the state of an object. | |
Public Attributes | |
ACE_ALLOC_HOOK_DECLARE | |
Declare the dynamic allocation hooks. | |
Protected Types | |
typedef ACE_Concurrency_Strategy < SVC_HANDLER > | inherited |
Protected Attributes | |
ACE_Thread_Manager * | thr_mgr_ |
Thread manager for this class (must be provided). | |
long | thr_flags_ |
Flags to pass into the <SVC_HANDLER::activate> method. | |
int | n_threads_ |
Number of threads to spawn. |
This class provides a strategy that manages the creation of threads to handle requests from clients concurrently via a thread-per-connection model. It behaves as a "thread factory", spawning threads "on-demand" to run the service specified by a user-supplied SVC_HANDLER.
typedef ACE_Concurrency_Strategy<SVC_HANDLER> ACE_Thread_Strategy< SVC_HANDLER >::base_type |
typedef ACE_Concurrency_Strategy<SVC_HANDLER> ACE_Thread_Strategy< SVC_HANDLER >::inherited [protected] |
ACE_Thread_Strategy< SVC_HANDLER >::ACE_Thread_Strategy | ( | int | flags = 0 |
) | [inline] |
"Do-nothing constructor"
ACE_Thread_Strategy< SVC_HANDLER >::ACE_Thread_Strategy | ( | ACE_Thread_Manager * | tm, | |
long | thr_flags, | |||
int | n_threads = 1 , |
|||
int | flags = 0 | |||
) | [inline] |
Initialize the strategy.
ACE_Thread_Strategy< SVC_HANDLER >::~ACE_Thread_Strategy | ( | void | ) | [inline, virtual] |
int ACE_Thread_Strategy< SVC_HANDLER >::activate_svc_handler | ( | SVC_HANDLER * | svc_handler, | |
void * | arg = 0 | |||
) | [inline, virtual] |
Activate the svc_handler with an appropriate concurrency strategy. This method activates the SVC_HANDLER by first calling its <open> method and then calling its <activate> method to turn it into an active object.
Reimplemented from ACE_Concurrency_Strategy< SVC_HANDLER >.
void ACE_Thread_Strategy< SVC_HANDLER >::dump | ( | void | ) | const [inline] |
int ACE_Thread_Strategy< SVC_HANDLER >::open | ( | ACE_Thread_Manager * | tm, | |
long | thr_flags, | |||
int | n_threads = 1 , |
|||
int | flags = 0 | |||
) | [inline, virtual] |
Initialize the strategy.
ACE_Thread_Strategy< SVC_HANDLER >::ACE_ALLOC_HOOK_DECLARE |
int ACE_Thread_Strategy< SVC_HANDLER >::n_threads_ [protected] |
Number of threads to spawn.
long ACE_Thread_Strategy< SVC_HANDLER >::thr_flags_ [protected] |
Flags to pass into the <SVC_HANDLER::activate> method.
ACE_Thread_Manager* ACE_Thread_Strategy< SVC_HANDLER >::thr_mgr_ [protected] |
Thread manager for this class (must be provided).