- java.lang.Object
-
- org.redkale.scheduled.spi.ScheduleManagerService
-
- 所有已实现的接口:
ScheduledManager
,Service
@Local @Component @AutoLoad(false) @ResourceType(ScheduledManager.class) public class ScheduleManagerService extends Object implements ScheduledManager, Service
定时任务管理器详情见: https://redkale.org
- 从以下版本开始:
- 2.8.0
- 作者:
- zhangjx
-
-
嵌套类概要
嵌套类 修饰符和类型 类 说明 protected class
ScheduleManagerService.CronTask
protected class
ScheduleManagerService.FixedTask
protected class
ScheduleManagerService.ScheduledTask
-
字段概要
字段 修饰符和类型 字段 说明 protected Application
application
protected AnyValue
config
protected boolean
enabled
protected ReentrantLock
lock
protected Logger
logger
protected ConcurrentHashMap<WeakReference,List<ScheduleManagerService.ScheduledTask>>
refTaskMap
-
构造器概要
构造器 限定符 构造器 说明 protected
ScheduleManagerService(UnaryOperator<String> propertyFunc)
-
方法概要
所有方法 静态方法 实例方法 具体方法 修饰符和类型 方法 说明 static ScheduleManagerService
create(UnaryOperator<String> propertyFunc)
protected ScheduleManagerService.ScheduledTask
createdOnlyNameTask(WeakReference ref, Method method, String name, String cron, String fixedDelay, String fixedRate, String initialDelay, String zone, TimeUnit timeUnit)
protected Function<ScheduledEvent,Object>
createFuncJob(WeakReference ref, Method method)
void
destroy(AnyValue conf)
进程退出时,调用Service销毁 远程模式下该方法会重载成空方法 注意: 在此方法内不能调用MessageClient.sendMessage 方法,因为Application关闭时会先destroy掉MessageClientboolean
enabled()
ScheduleManagerService
enabled(boolean val)
List<Object>
execute(String scheduleName, boolean all)
执行所有宿主对象中指定的任务名protected String
getProperty(String value)
void
init(AnyValue conf)
该方法必须是可以重复调用, 当reload时需要重复调用init方法 远程模式下该方法会重载成空方法void
onServersPostStart()
void
onServersPreStart()
void
schedule(Object service)
开启宿主对象中所有的定时任务方法.protected ScheduleManagerService.ScheduledTask
schedule(WeakReference ref, Method method, boolean remoteMode)
protected ScheduleManagerService.ScheduledTask
scheduleTask(WeakReference ref, Method method, String name, String cron, String fixedDelay, String fixedRate, String initialDelay, String zone, TimeUnit timeUnit)
int
start(String scheduleName)
开启所有宿主对象中指定的任务名int
stop(String scheduleName)
关闭所有宿主对象中指定的任务名void
unschedule(Object service)
关闭宿主对象中所有的定时任务方法
-
-
-
字段详细资料
-
logger
protected final Logger logger
-
refTaskMap
protected final ConcurrentHashMap<WeakReference,List<ScheduleManagerService.ScheduledTask>> refTaskMap
-
lock
protected final ReentrantLock lock
-
application
protected Application application
-
enabled
protected boolean enabled
-
config
protected AnyValue config
-
-
构造器详细资料
-
ScheduleManagerService
protected ScheduleManagerService(UnaryOperator<String> propertyFunc)
-
-
方法详细资料
-
create
public static ScheduleManagerService create(UnaryOperator<String> propertyFunc)
-
enabled
public boolean enabled()
-
enabled
public ScheduleManagerService enabled(boolean val)
-
init
public void init(AnyValue conf)
从接口复制的说明:Service
该方法必须是可以重复调用, 当reload时需要重复调用init方法 远程模式下该方法会重载成空方法
-
destroy
public void destroy(AnyValue conf)
从接口复制的说明:Service
进程退出时,调用Service销毁 远程模式下该方法会重载成空方法 注意: 在此方法内不能调用MessageClient.sendMessage 方法,因为Application关闭时会先destroy掉MessageClient
-
onServersPreStart
public void onServersPreStart()
-
onServersPostStart
public void onServersPostStart()
-
schedule
public void schedule(Object service)
从接口复制的说明:ScheduledManager
开启宿主对象中所有的定时任务方法. 存在定时任务方法返回true,否则返回false- 指定者:
schedule
在接口中ScheduledManager
- 参数:
service
- 宿主对象
-
unschedule
public void unschedule(Object service)
从接口复制的说明:ScheduledManager
关闭宿主对象中所有的定时任务方法- 指定者:
unschedule
在接口中ScheduledManager
- 参数:
service
- 宿主对象
-
schedule
protected ScheduleManagerService.ScheduledTask schedule(WeakReference ref, Method method, boolean remoteMode)
-
scheduleTask
protected ScheduleManagerService.ScheduledTask scheduleTask(WeakReference ref, Method method, String name, String cron, String fixedDelay, String fixedRate, String initialDelay, String zone, TimeUnit timeUnit)
-
createdOnlyNameTask
protected ScheduleManagerService.ScheduledTask createdOnlyNameTask(WeakReference ref, Method method, String name, String cron, String fixedDelay, String fixedRate, String initialDelay, String zone, TimeUnit timeUnit)
-
createFuncJob
protected Function<ScheduledEvent,Object> createFuncJob(WeakReference ref, Method method)
-
start
public int start(String scheduleName)
从接口复制的说明:ScheduledManager
开启所有宿主对象中指定的任务名- 指定者:
start
在接口中ScheduledManager
- 参数:
scheduleName
- 定时任务名称- 返回:
- 返回任务数量
- 另请参阅:
Scheduled.name()
-
execute
public List<Object> execute(String scheduleName, boolean all)
从接口复制的说明:ScheduledManager
执行所有宿主对象中指定的任务名- 指定者:
execute
在接口中ScheduledManager
- 参数:
scheduleName
- 定时任务名称all
- 是执行所有同名任务还是只执行其中任意一个- 返回:
- 结果集合
- 另请参阅:
Scheduled.name()
-
stop
public int stop(String scheduleName)
从接口复制的说明:ScheduledManager
关闭所有宿主对象中指定的任务名- 指定者:
stop
在接口中ScheduledManager
- 参数:
scheduleName
- 定时任务名称- 返回:
- 返回任务数量
- 另请参阅:
Scheduled.name()
-
-