def abortable_worker(func, *args, **kwargs):
# returns ("null",) if timeout
timeout = kwargs.get('timeout', None)
p = multiprocessing.dummy.Pool(1)
res = p.apply_async(func, args=args)
try:
out = res.get(timeout) # Wait timeout seconds for func to complete.
return out
except multiprocessing.TimeoutError:
return ("null",)
评论列表
文章目录