您的位置:首页 > 编程语言 > Java开发

java线程池的一些用法

2017-10-18 00:00 204 查看
摘要: 养成随手小计的习惯,用的时候总是方便些

public class TestCaseUnti {

@Test
public void test() {

//模拟生成100条数据
final List<String> insertList = new ArrayList();
for(int i=0;i<100;i++){
insertList.add("["+i+"]");
}
//创建线程池
ExecutorService pool = Executors.newFixedThreadPool(10);
//每个线程负责20条数据
for (int i = 0;i<insertList.size();i=i+20) {
final int start = i;
final int end = i+20;
pool.execute(new Runnable() {
@Override
public void run() {
//具体的业务逻辑代码
task(insertList.subList(start, end));
}
});
}
pool.shutdown();
}

public static void task(List<String> insertList){
System.out.println(Thread.currentThread().getName()+"正在執行...第"+insertList.get(0)+"-"+insertList.get(insertList.size()-1));
}

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: