Asterisk - The Open Source Telephony Project GIT-master-77d630f
|
Go to the source code of this file.
Functions | |
struct ast_serializer_shutdown_group * | ast_serializer_shutdown_group_alloc (void) |
Create a serializer group shutdown control object. More... | |
void | ast_serializer_shutdown_group_dec (struct ast_serializer_shutdown_group *shutdown_group) |
Decrement the number of serializer members in the group. More... | |
void | ast_serializer_shutdown_group_inc (struct ast_serializer_shutdown_group *shutdown_group) |
Increment the number of serializer members in the group. More... | |
int | ast_serializer_shutdown_group_join (struct ast_serializer_shutdown_group *shutdown_group, int timeout) |
Wait for the serializers in the group to shutdown with timeout. More... | |
struct ast_serializer_shutdown_group * ast_serializer_shutdown_group_alloc | ( | void | ) |
Create a serializer group shutdown control object.
Definition at line 42 of file serializer_shutdown_group.c.
References ao2_alloc, ast_cond_init, ast_serializer_shutdown_group::cond, NULL, serializer_shutdown_group_dtor(), and shutdown_group.
Referenced by ast_serializer_pool_create(), ast_serializer_taskpool_create(), load_module(), and sip_options_init_task().
void ast_serializer_shutdown_group_dec | ( | struct ast_serializer_shutdown_group * | shutdown_group | ) |
Decrement the number of serializer members in the group.
shutdown_group | Group shutdown controller. |
Definition at line 100 of file serializer_shutdown_group.c.
References ao2_lock, ao2_unlock, ast_cond_signal, ast_serializer_shutdown_group::cond, ast_serializer_shutdown_group::count, and shutdown_group.
Referenced by serializer_shutdown().
void ast_serializer_shutdown_group_inc | ( | struct ast_serializer_shutdown_group * | shutdown_group | ) |
Increment the number of serializer members in the group.
shutdown_group | Group shutdown controller. |
Definition at line 93 of file serializer_shutdown_group.c.
References ao2_lock, ao2_unlock, ast_serializer_shutdown_group::count, and shutdown_group.
Referenced by ast_taskpool_serializer_group(), and ast_threadpool_serializer_group().
int ast_serializer_shutdown_group_join | ( | struct ast_serializer_shutdown_group * | shutdown_group, |
int | timeout | ||
) |
Wait for the serializers in the group to shutdown with timeout.
shutdown_group | Group shutdown controller. (Returns 0 immediately if NULL) |
timeout | Number of seconds to wait for the serializers in the group to shutdown. Zero if the timeout is disabled. |
Definition at line 54 of file serializer_shutdown_group.c.
References ao2_lock, ao2_object_get_lockaddr(), ao2_unlock, ast_assert, ast_cond_timedwait, ast_cond_wait, ast_tvnow(), ast_serializer_shutdown_group::cond, ast_serializer_shutdown_group::count, end, lock, NULL, and shutdown_group.
Referenced by ast_res_pjsip_cleanup_options_handling(), ast_serializer_pool_destroy(), and unload_module().