Asterisk - The Open Source Telephony Project
18.5.0
|
Data Fields | |
ast_cond_t | cond |
int | id |
ast_mutex_t | lock |
struct ast_threadpool_options | options |
struct ast_threadpool * | pool |
enum worker_state | state |
pthread_t | thread |
int | wake_up |
A thread that executes threadpool tasks
Definition at line 143 of file threadpool.c.
ast_cond_t cond |
Condition used in conjunction with state changes
Definition at line 147 of file threadpool.c.
Referenced by worker_idle(), worker_set_state(), worker_thread_alloc(), and worker_thread_destroy().
int id |
A unique (within a run of Asterisk) ID for the thread. Used for hashing and searching
Definition at line 145 of file threadpool.c.
Referenced by activate_thread(), grow(), Model::load(), worker_thread_alloc(), worker_thread_cmp(), worker_thread_destroy(), worker_thread_hash(), and zombify_threads().
ast_mutex_t lock |
Lock used alongside the condition for state changes
Definition at line 149 of file threadpool.c.
Referenced by worker_idle(), worker_set_state(), worker_start(), worker_thread_alloc(), and worker_thread_destroy().
struct ast_threadpool_options options |
Options for this threadpool
Definition at line 159 of file threadpool.c.
Referenced by worker_idle(), worker_start(), and worker_thread_alloc().
struct ast_threadpool* pool |
A pointer to the threadpool. Needed to be able to execute tasks
Definition at line 153 of file threadpool.c.
Referenced by worker_active(), worker_idle(), worker_start(), and worker_thread_alloc().
enum worker_state state |
The current state of the worker thread
Definition at line 155 of file threadpool.c.
Referenced by worker_idle(), worker_set_state(), worker_start(), and worker_thread_alloc().
pthread_t thread |
The actual thread that is executing tasks
Definition at line 151 of file threadpool.c.
Referenced by worker_shutdown(), worker_thread_alloc(), and worker_thread_start().
int wake_up |
A boolean used to determine if an idle thread should become active
Definition at line 157 of file threadpool.c.
Referenced by worker_idle(), and worker_set_state().