diff --git a/asyncTool-core/src/main/java/com/jd/platform/async/wrapper/WorkerWrapper.java b/asyncTool-core/src/main/java/com/jd/platform/async/wrapper/WorkerWrapper.java index ef7df9c..96dc92a 100755 --- a/asyncTool-core/src/main/java/com/jd/platform/async/wrapper/WorkerWrapper.java +++ b/asyncTool-core/src/main/java/com/jd/platform/async/wrapper/WorkerWrapper.java @@ -264,16 +264,16 @@ public abstract class WorkerWrapper { } } }; - final Runnable __function__callbackResultOfFalse_beginNext = - () -> { - __function__callbackResult.accept(false); + final Consumer __function__callbackResultOfFalse_beginNext = + (success) -> { + __function__callbackResult.accept(success); beginNext(executorService, now, remainTime, group); }; final BiConsumer __function__fastFail_callbackResult$false_beginNext = (fastFail_isTimeout, fastFail_exception) -> { boolean isEndsNormally = fastFail_exception instanceof EndsNormallyException; fastFail(fastFail_isTimeout && !isEndsNormally, fastFail_exception, isEndsNormally); - __function__callbackResultOfFalse_beginNext.run(); + __function__callbackResultOfFalse_beginNext.accept(false); }; final Runnable __function__doWork = () -> { @@ -281,8 +281,7 @@ public abstract class WorkerWrapper { try { if (fire(group)) { if (setState(state, WORKING, AFTER_WORK)) { - __function__callbackResult.accept(true); - beginNext(executorService, now, remainTime, group); + __function__callbackResultOfFalse_beginNext.accept(true); } } } catch (Exception e) { @@ -306,6 +305,7 @@ public abstract class WorkerWrapper { // 总的已经超时了,就快速失败,进行下一个 if (remainTime <= 0) { if (setState(state, states_of_beforeWorkingEnd, ERROR, null)) { + System.out.println("快速失败"); __function__fastFail_callbackResult$false_beginNext.accept(true, null); } return; diff --git a/asyncTool-openutil/src/main/java/com/jd/platform/async/openutil/timer/HashedWheelTimer.java b/asyncTool-openutil/src/main/java/com/jd/platform/async/openutil/timer/HashedWheelTimer.java index 5492b72..fbb6d1d 100644 --- a/asyncTool-openutil/src/main/java/com/jd/platform/async/openutil/timer/HashedWheelTimer.java +++ b/asyncTool-openutil/src/main/java/com/jd/platform/async/openutil/timer/HashedWheelTimer.java @@ -315,7 +315,7 @@ public class HashedWheelTimer extends AbstractWheelTimer { startTimeInitialized.countDown(); do { - //TODO 时间轮这里结束不了任务 + //TODO 时间轮这里一直执行,结束不了任务 final long deadline = waitForNextTick(); if (deadline > 0) { int idx = (int) (tick & mask);