TbSchedule使用过程中几个参数非常容易混淆,根据测试对一下重要参数进行解读:
例如任务项:0,1,2,3,4,5,6,7,8,9;
调度策略中最大线程组数量:5;
每次获取的数量:500;
任务的线程数:10;
任务根据执行开始时间的配置执行时,先调用
public List<OrderInfo> selectTasks(String taskParameter, String ownSign,int taskItemNum, List<TaskItemDefine> queryCondition,int eachFetchDataNum) 方法 eachFetchDataNum=500 queryCondition=2(任务项数量/线程组数量) 此时会有五个线程并发循环执行selectTasks方法,直到不在返回数据,当某一个线程不在返回数据后,此线程不会就被使用用于执行其他的selectTasks的任务 当某一个线程执行selectTasks一次后,将根据任务的线程数,并发10个线程执行500次execute方法!
本文转自 xinsir999 51CTO博客,原文链接:http://blog.51cto.com/xinsir/1943006,如需转载请自行联系原作者