TaskContainer¶
- class deepfos.lib.subtask.TaskContainer(args, task_name_tmpl='Task - {counter:03}', swallow_exc=True)¶
创建子任务容器
将提供的执行参数包装为当前脚本的子任务,在循环的不同时刻更新状态
- 参数
注解
在循环开始前,基于此迭代方法创建并初始化所有子任务,状态为“等待”
在每次循环开始时,更新当前子任务状态为“运行中”
结束时,视结果及是否忽略异常(swallow_exc)更新状态为“成功”或“失败”
示例
例如原先有如下代码结构:
for arg in range(10): do_something(arg)
如果希望每次循环能作为子任务在作业管理中查看, 可以对代码作如下修改:
for task in TaskContainer(range(10)): with task.get_arg() as arg: do_something(arg)
参见