Package org.aoju.bus.cron.timings
Class TimingWheel
java.lang.Object
org.aoju.bus.cron.timings.TimingWheel
多层时间轮,常用于延时任务
时间轮是一种环形数据结构,由多个槽组成,每个槽中存放任务集合
一个单独的线程推进时间一槽一槽的移动,并执行槽中的任务
- Since:
- Java 17+
- Version:
- 6.5.0
- Author:
- Kimi Liu
-
Constructor Summary
ConstructorsConstructorDescriptionTimingWheel(long tickMs, int wheelSize, long currentTime, Consumer<TimerTaskList> consumer) 构造TimingWheel(long tickMs, int wheelSize, Consumer<TimerTaskList> consumer) 构造 -
Method Summary
-
Constructor Details
-
TimingWheel
构造- Parameters:
tickMs- 一个时间槽的范围,单位毫秒wheelSize- 时间轮大小consumer- 任务处理器
-
TimingWheel
构造- Parameters:
tickMs- 一个时间槽的范围,单位毫秒wheelSize- 时间轮大小currentTime- 当前时间consumer- 任务处理器
-
-
Method Details
-
addTask
添加任务到时间轮- Parameters:
timerTask- 任务- Returns:
- 是否成功
-
advanceClock
public void advanceClock(long timestamp) 推进时间- Parameters:
timestamp- 推进的时间
-