我正在执行一个任务,其中我需要执行5-6个步骤,如果我的代码在中间的某个步骤失败了,我的要求是从失败的相同步骤重试(这个信息我保存在DB表中),我可以用复杂的if-else检查来解决这个问题,但我正在寻找一些标准的或好的方法来解决这个问题。
发布于 2018-12-28 21:46:12
我会保存一个子任务列表和一个索引来指定执行停止的位置。伪码:
public class Task {
List<SubTask> subtasks;
int executionIndex = 0;
// ctor, getters, setters, etc...
public void execute() {
for (int i = executionIndex; i < subtasks.size(); ++i) {
subtasks.get(i).execute();
saveProgressToDB(i);
++exectionIndex;
}
}
}https://stackoverflow.com/questions/53959010
复制相似问题