异步任务队列
_task_queue = Queue.Queue()
异步队列输入
def async_call(function, callback, task_id, task_name, *args, **kwargs):
_task_queue.put({
'function': function,
'callback': callback,
'task_id': task_id,
'task_name': task_name,
'args': args,
'kwargs': kwargs
})
异步队列获取并执行
def _task_queue_consumer(**kwargs):
"""
异步任务队列消费者
"""
db = kwargs.get("db_queue")
while True:
try:
#循环间隔获取,避免no-block或者一直获取无法停止
task = _task_queue.get(timeout=10)
func = task.get('function')
task_id = task.get('task_id')
task_name = task.get('task_name')
task_args = task.get('args')
task_kwargs = task.