Package top.focess.qq.api.schedule
Class Schedulers
- java.lang.Object
-
- top.focess.qq.api.schedule.Schedulers
-
public class Schedulers extends Object
Used to create Scheduler. The scheduler factory.
-
-
Method Summary
All Methods Static Methods Concrete Methods Modifier and Type Method Description static voidclose(Plugin plugin)Close all the schedulers belonging to the pluginstatic booleancloseAll()Close all the schedulersstatic SchedulernewFocessScheduler(Plugin plugin)New a FocessScheduler, the scheduler will run all tasks in time order.static SchedulernewThreadPoolScheduler(Plugin plugin, int poolSize)New a ThreadPoolScheduler, the scheduler can run tasks in parallel.
-
-
-
Method Detail
-
newFocessScheduler
public static Scheduler newFocessScheduler(@NotNull Plugin plugin)
New a FocessScheduler, the scheduler will run all tasks in time order. For example, if the finish-time of the last task is after the start-time of the next task, the next task will only be executed after the last task is finished. As a result, the task running in this scheduler cannot be cancelled if it is already running.- Parameters:
plugin- the plugin- Returns:
- a FocessScheduler
-
newThreadPoolScheduler
public static Scheduler newThreadPoolScheduler(@NotNull Plugin plugin, int poolSize)
New a ThreadPoolScheduler, the scheduler can run tasks in parallel. So if the thread-pool is big enough, even if the finish-time of the last task is after the start-time of the next task, the next task will be executed immediately. As a result, the task running in this scheduler can be cancelled if it is already running.- Parameters:
plugin- the pluginpoolSize- the thread pool size- Returns:
- a ThreadPoolScheduler
-
close
public static void close(Plugin plugin)
Close all the schedulers belonging to the plugin- Parameters:
plugin- the plugin
-
closeAll
public static boolean closeAll()
Close all the schedulers- Returns:
- true if there are some schedulers not belonging to MainPlugin not been closed, false otherwise
-
-