diff options
author | Richard Mudgett <rmudgett@digium.com> | 2015-06-19 16:16:17 -0500 |
---|---|---|
committer | Richard Mudgett <rmudgett@digium.com> | 2015-06-25 14:33:44 -0500 |
commit | af4ae3095e2dc95ffefa864b83fed60b408bc442 (patch) | |
tree | 6c3a77293744b6310345f93d87557918a98279d8 /res/res_pjsip.c | |
parent | 4c133d81cde27c28e28c1c41528dc9db4b654286 (diff) |
threadpool, res_pjsip: Add serializer group shutdown API calls.
A module trying to unload needs to wait for all serializers it creates and
uses to complete processing before unloading.
ASTERISK-24907
Reported by: Kevin Harwell
Change-Id: I8c80b90f2f82754e8dbb02ddf3c9121e5e966059
Diffstat (limited to 'res/res_pjsip.c')
-rw-r--r-- | res/res_pjsip.c | 9 |
1 files changed, 7 insertions, 2 deletions
diff --git a/res/res_pjsip.c b/res/res_pjsip.c index 8d5adf6a7..23cf2f0dd 100644 --- a/res/res_pjsip.c +++ b/res/res_pjsip.c @@ -3327,20 +3327,25 @@ int ast_sip_append_body(pjsip_tx_data *tdata, const char *body_text) return 0; } -struct ast_taskprocessor *ast_sip_create_serializer(void) +struct ast_taskprocessor *ast_sip_create_serializer_group(struct ast_serializer_shutdown_group *shutdown_group) { struct ast_taskprocessor *serializer; char name[AST_UUID_STR_LEN]; ast_uuid_generate_str(name, sizeof(name)); - serializer = ast_threadpool_serializer(name, sip_threadpool); + serializer = ast_threadpool_serializer_group(name, sip_threadpool, shutdown_group); if (!serializer) { return NULL; } return serializer; } +struct ast_taskprocessor *ast_sip_create_serializer(void) +{ + return ast_sip_create_serializer_group(NULL); +} + /*! * \internal * \brief Shutdown the serializers in the default pool. |