| Asterisk - The Open Source Telephony Project GIT-master-27fb039
    | 
#include "asterisk.h"#include "asterisk/serializer_shutdown_group.h"#include "asterisk/astobj2.h"#include "asterisk/time.h"#include "asterisk/utils.h"
Go to the source code of this file.
| Data Structures | |
| struct | ast_serializer_shutdown_group | 
| Functions | |
| struct ast_serializer_shutdown_group * | ast_serializer_shutdown_group_alloc (void) | 
| Create a serializer group shutdown control object. | |
| void | ast_serializer_shutdown_group_dec (struct ast_serializer_shutdown_group *shutdown_group) | 
| Decrement the number of serializer members in the group. | |
| void | ast_serializer_shutdown_group_inc (struct ast_serializer_shutdown_group *shutdown_group) | 
| Increment the number of serializer members in the 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. | |
| static void | serializer_shutdown_group_dtor (void *vdoomed) | 
| 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(), 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(), and 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(), unload_module(), and unload_module().
| 
 | static | 
Definition at line 35 of file serializer_shutdown_group.c.
References ast_cond_destroy, and ast_serializer_shutdown_group::cond.
Referenced by ast_serializer_shutdown_group_alloc().