#include <pthread.h>Go to the source code of this file.
Classes | |
| struct | tpool_work |
| struct | tpool |
Typedefs | |
| typedef tpool_work | tpool_work_t |
| typedef tpool * | tpool_t |
Functions | |
| void | tpool_init (tpool_t *tpoolp, int num_worker_threads, int max_queue_size, int do_not_block_when_full) |
| void | tpool_thread (tpool_t tpool) |
| int | tpool_add_work (tpool_t tpool, void *routine, void *arg) |
| int | tpool_destroy (tpool_t tpool, int finish) |
| typedef struct tpool_work tpool_work_t |
| int tpool_add_work | ( | tpool_t | tpool, | |
| void * | routine, | |||
| void * | arg | |||
| ) |
Definition at line 89 of file eh_thread_pool.c.
References tpool_work::arg, tpool::cur_queue_size, tpool::do_not_block_when_full, eh_new, tpool::max_queue_size, tpool_work::next, tpool::queue_closed, tpool::queue_head, tpool::queue_lock, tpool::queue_not_empty, tpool::queue_not_full, tpool::queue_tail, tpool_work::routine, and tpool::shutdown.
| int tpool_destroy | ( | tpool_t | tpool, | |
| int | finish | |||
| ) |
Definition at line 135 of file eh_thread_pool.c.
References tpool::cur_queue_size, eh_exit(), eh_free, tpool_work::next, tpool::num_threads, tpool::queue_closed, tpool::queue_empty, tpool::queue_head, tpool::queue_lock, tpool::queue_not_empty, tpool::queue_not_full, tpool::shutdown, and tpool::threads.
| void tpool_init | ( | tpool_t * | tpoolp, | |
| int | num_worker_threads, | |||
| int | max_queue_size, | |||
| int | do_not_block_when_full | |||
| ) |
| void tpool_thread | ( | tpool_t | tpool | ) |
Definition at line 51 of file eh_thread_pool.c.
References tpool::cur_queue_size, tpool::queue_lock, tpool::queue_not_empty, and tpool::shutdown.
Referenced by tpool_init().
1.5.2