22#ifndef NAPR_THREADPOOL_H
23#define NAPR_THREADPOOL_H
apr_status_t napr_threadpool_shutdown(napr_threadpool_t *threadpool)
Shuts down the thread pool.
apr_status_t napr_threadpool_wait(napr_threadpool_t *threadpool)
Waits until all tasks currently in the queue have been processed.
struct napr_threadpool_t napr_threadpool_t
Opaque thread pool structure.
apr_status_t() threadpool_process_data_callback_fn_t(void *ctx, void *data)
The worker function executed by threads in the pool.
apr_status_t napr_threadpool_init(napr_threadpool_t **threadpool, void *ctx, unsigned long nb_thread, threadpool_process_data_callback_fn_t *process_data, apr_pool_t *pool)
Initializes a thread pool.
apr_status_t napr_threadpool_add(napr_threadpool_t *threadpool, void *data)
Adds a task (a data item) to the thread pool's processing queue.