@Override public void scheduleAtFixedRate(Runnable task, long initialDelay, long period, TaskPriority priority) { getRunningScheduler().scheduleAtFixedRate(task, initialDelay, period, priority); }
@Override public void scheduleWithFixedDelay(Runnable task, long initialDelay, long recurringDelay, TaskPriority priority) { getRunningScheduler().scheduleWithFixedDelay(task, initialDelay, recurringDelay, priority); }
@Override protected OneTimeTaskWrapper doSchedule(Runnable task, long delayInMillis, TaskPriority priority) { return getRunningScheduler().doSchedule(task, delayInMillis, priority); }
@Override public void scheduleWithFixedDelay(Runnable task, long initialDelay, long recurringDelay, TaskPriority priority) { getRunningScheduler().scheduleWithFixedDelay(task, initialDelay, recurringDelay, priority); }
@Override public void scheduleAtFixedRate(Runnable task, long initialDelay, long period, TaskPriority priority) { getRunningScheduler().scheduleAtFixedRate(task, initialDelay, period, priority); }
@Override protected OneTimeTaskWrapper doSchedule(Runnable task, long delayInMillis, TaskPriority priority) { return getRunningScheduler().doSchedule(task, delayInMillis, priority); }
/** * Used for gaining compatibility with java.util.concurrent when a {@link Delayed} object is * needed. * * @param scheduler Scheduler to submit task to * @param task Task to be submitted * @param priority Priority for task to be submitted at * @param initialDelay initial delay for task to execute * @param delayInMs recurring delay for task to execute * @return Delayed implementation which corresponds to executed task */ public static Delayed doScheduleWithFixedDelayAndGetDelayed(SingleThreadScheduler scheduler, Runnable task, TaskPriority priority, long initialDelay, long delayInMs) { NoThreadScheduler nts = scheduler.getRunningScheduler(); QueueSet queueSet = nts.queueManager.getQueueSet(priority); NoThreadRecurringDelayTaskWrapper rdt = nts.new NoThreadRecurringDelayTaskWrapper(task, queueSet, Clock.accurateForwardProgressingMillis() + initialDelay, delayInMs); queueSet.addScheduled(rdt); return new DelayedTaskWrapper(rdt); }
/** * Used for gaining compatibility with java.util.concurrent when a {@link Delayed} object is * needed. * * @param scheduler Scheduler to submit task to * @param task Task to be submitted * @param priority Priority for task to be submitted at * @param initialDelay initial delay for task to execute * @param periodInMillis recurring delay for task to execute * @return Delayed implementation which corresponds to executed task */ public static Delayed doScheduleAtFixedRateAndGetDelayed(SingleThreadScheduler scheduler, Runnable task, TaskPriority priority, long initialDelay, long periodInMillis) { NoThreadScheduler nts = scheduler.getRunningScheduler(); QueueSet queueSet = nts.queueManager.getQueueSet(priority); NoThreadRecurringRateTaskWrapper rt = nts.new NoThreadRecurringRateTaskWrapper(task, queueSet, Clock.accurateForwardProgressingMillis() + initialDelay, periodInMillis); queueSet.addScheduled(rt); return new DelayedTaskWrapper(rt); }
/** * Used for gaining compatibility with java.util.concurrent when a {@link Delayed} object is * needed. * * @param scheduler Scheduler to submit task to * @param task Task to be submitted * @param priority Priority for task to be submitted at * @param initialDelay initial delay for task to execute * @param periodInMillis recurring delay for task to execute * @return Delayed implementation which corresponds to executed task */ public static Delayed doScheduleAtFixedRateAndGetDelayed(SingleThreadScheduler scheduler, Runnable task, TaskPriority priority, long initialDelay, long periodInMillis) { NoThreadScheduler nts = scheduler.getRunningScheduler(); QueueSet queueSet = nts.queueManager.getQueueSet(priority); NoThreadRecurringRateTaskWrapper rt = nts.new NoThreadRecurringRateTaskWrapper(task, queueSet, Clock.accurateForwardProgressingMillis() + initialDelay, periodInMillis); queueSet.addScheduled(rt); return new DelayedTaskWrapper(rt); }
/** * Used for gaining compatibility with java.util.concurrent when a {@link Delayed} object is * needed. * * @param scheduler Scheduler to submit task to * @param task Task to be submitted * @param priority Priority for task to be submitted at * @param initialDelay initial delay for task to execute * @param delayInMs recurring delay for task to execute * @return Delayed implementation which corresponds to executed task */ public static Delayed doScheduleWithFixedDelayAndGetDelayed(SingleThreadScheduler scheduler, Runnable task, TaskPriority priority, long initialDelay, long delayInMs) { NoThreadScheduler nts = scheduler.getRunningScheduler(); QueueSet queueSet = nts.queueManager.getQueueSet(priority); NoThreadRecurringDelayTaskWrapper rdt = nts.new NoThreadRecurringDelayTaskWrapper(task, queueSet, Clock.accurateForwardProgressingMillis() + initialDelay, delayInMs); queueSet.addScheduled(rdt); return new DelayedTaskWrapper(rdt); }