!19 优化有多个依赖的情况:如果当前任务已经完成了,依赖的其他任务拿到锁再进来时,不需要执行下面的逻辑了。

Merge pull request !19 from KyleTao/master
This commit is contained in:
tianyaleixiaowu
2022-06-13 01:59:51 +00:00
committed by Gitee

View File

@@ -216,6 +216,10 @@ public class WorkerWrapper<T, V> {
}
private synchronized void doDependsJobs(ExecutorService executorService, List<DependWrapper> dependWrappers, WorkerWrapper fromWrapper, long now, long remainTime) {
//如果当前任务已经完成了,依赖的其他任务拿到锁再进来时,不需要执行下面的逻辑了。
if (getState() != INIT) {
return ;
}
boolean nowDependIsMust = false;
//创建必须完成的上游wrapper集合
Set<DependWrapper> mustWrapper = new HashSet<>();