mirror of
https://github.com/asterisk/asterisk.git
synced 2025-09-04 03:50:31 +00:00
threadpool: Make ast_threadpool_push() return -1 if shutting_down
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@382295 65c4cc65-6c06-0410-ace0-fbb531ad65f3
This commit is contained in:
@@ -898,7 +898,7 @@ int ast_threadpool_push(struct ast_threadpool *pool, int (*task)(void *data), vo
|
|||||||
if (!pool->shutting_down) {
|
if (!pool->shutting_down) {
|
||||||
return ast_taskprocessor_push(pool->tps, task, data);
|
return ast_taskprocessor_push(pool->tps, task, data);
|
||||||
}
|
}
|
||||||
return 0;
|
return -1;
|
||||||
}
|
}
|
||||||
|
|
||||||
void ast_threadpool_shutdown(struct ast_threadpool *pool)
|
void ast_threadpool_shutdown(struct ast_threadpool *pool)
|
||||||
@@ -1143,7 +1143,9 @@ static void serializer_task_pushed(struct ast_taskprocessor_listener *listener,
|
|||||||
struct serializer *ser = ast_taskprocessor_listener_get_user_data(listener);
|
struct serializer *ser = ast_taskprocessor_listener_get_user_data(listener);
|
||||||
struct ast_taskprocessor *tps = ast_taskprocessor_listener_get_tps(listener);
|
struct ast_taskprocessor *tps = ast_taskprocessor_listener_get_tps(listener);
|
||||||
|
|
||||||
ast_threadpool_push(ser->pool, execute_tasks, tps);
|
if (ast_threadpool_push(ser->pool, execute_tasks, tps)) {
|
||||||
|
ast_taskprocessor_unreference(tps);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user