Make sure cancelled scheduled tasks will not run again if cancelled before
This commit is contained in:
parent
28576aa41e
commit
624bda4695
@ -800,16 +800,19 @@ public abstract class SingleThreadEventExecutor extends AbstractEventExecutor {
|
||||
setSuccessInternal(result);
|
||||
}
|
||||
} else {
|
||||
task.call();
|
||||
if (!executor().isShutdown()) {
|
||||
long p = periodNanos;
|
||||
if (p > 0) {
|
||||
deadlineNanos += p;
|
||||
} else {
|
||||
deadlineNanos = nanoTime() - p;
|
||||
}
|
||||
if (!isDone()) {
|
||||
executor().delayedTaskQueue.add(this);
|
||||
// check if is done as it may was cancelled
|
||||
if (!isDone()) {
|
||||
task.call();
|
||||
if (!executor().isShutdown()) {
|
||||
long p = periodNanos;
|
||||
if (p > 0) {
|
||||
deadlineNanos += p;
|
||||
} else {
|
||||
deadlineNanos = nanoTime() - p;
|
||||
}
|
||||
if (!isDone()) {
|
||||
executor().delayedTaskQueue.add(this);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
Loading…
x
Reference in New Issue
Block a user