thread pool
[utilities]


Typedefs

typedef axutil_thread_pool axutil_thread_pool_t

Functions

AXIS2_EXTERN axutil_thread_taxutil_thread_pool_get_thread (axutil_thread_pool_t *pool, axutil_thread_start_t func, void *data)
AXIS2_EXTERN axis2_status_t axutil_thread_pool_join_thread (axutil_thread_pool_t *pool, axutil_thread_t *thd)
AXIS2_EXTERN axis2_status_t axutil_thread_pool_exit_thread (axutil_thread_pool_t *pool, axutil_thread_t *thd)
AXIS2_EXTERN axis2_status_t axutil_thread_pool_thread_detach (axutil_thread_pool_t *pool, axutil_thread_t *thd)
AXIS2_EXTERN void axutil_thread_pool_free (axutil_thread_pool_t *pool)
AXIS2_EXTERN axutil_thread_pool_t * axutil_thread_pool_init (axutil_allocator_t *allocator)
AXIS2_EXTERN struct axutil_envaxutil_init_thread_env (const struct axutil_env *system_env)
AXIS2_EXTERN void axutil_free_thread_env (struct axutil_env *thread_env)

Function Documentation

AXIS2_EXTERN void axutil_free_thread_env struct axutil_env thread_env  ) 
 

This function can be used to free the environment that was used in a thread function

AXIS2_EXTERN struct axutil_env* axutil_init_thread_env const struct axutil_env system_env  ) 
 

This function can be used to initialize the environment in case of spawning a new thread via a thread function

AXIS2_EXTERN axis2_status_t axutil_thread_pool_exit_thread axutil_thread_pool_t *  pool,
axutil_thread_t thd
 

Stop the execution of current thread

Parameters:
thd thread to be stopped
Returns:
status of the operation

AXIS2_EXTERN void axutil_thread_pool_free axutil_thread_pool_t *  pool  ) 
 

Frees resources used by thread_pool

Parameters:
pool thread_pool to be freed

AXIS2_EXTERN axutil_thread_t* axutil_thread_pool_get_thread axutil_thread_pool_t *  pool,
axutil_thread_start_t  func,
void *  data
 

Retrives a thread from the thread pool

Parameters:
func function to be executed in the new thread
data arguments to be passed to the function
Returns:
pointer to a thread in ready state.

AXIS2_EXTERN axutil_thread_pool_t* axutil_thread_pool_init axutil_allocator_t allocator  ) 
 

Initializes (creates) an thread_pool.

Parameters:
allocator user defined allocator for the memory allocation.
Returns:
initialized thread_pool. NULL on error.

AXIS2_EXTERN axis2_status_t axutil_thread_pool_join_thread axutil_thread_pool_t *  pool,
axutil_thread_t thd
 

Blocks until the desired thread stops executing.

Parameters:
thd The thread to joined
Returns:
status of the operation

AXIS2_EXTERN axis2_status_t axutil_thread_pool_thread_detach axutil_thread_pool_t *  pool,
axutil_thread_t thd
 

Detaches a thread

Parameters:
thd thread to be detached
Returns:
status of the operation


Generated on Thu May 3 12:31:03 2007 for Axis2/C by  doxygen 1.4.6