本文主要是介绍java线程池开启多线程,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
// //maximumPoolSize设置为2 ,拒绝策略为AbortPolic策略,直接抛出异常
ThreadPoolExecutor pool = new ThreadPoolExecutor(5, 10, 1000000, TimeUnit.MILLISECONDS, new ArrayBlockingQueue<Runnable>(20000), Executors.defaultThreadFactory(),new ThreadPoolExecutor.AbortPolicy());
for(int i=0;i<3;i++) { //10000
Callable threadUserTask = new ThreadBankCardTestTask(i);
Future<String> res = pool.submit(threadUserTask);//异步提交, non blocking.
/* synchronized(TaskLock.lockA){
if(StringUtils.isEmpty(res.get()))
System.out.println("开始执行sql脚本,i"+i);
jdbcTemplate.execute(res.get());
System.out.println("结束了执行sql脚本,i"+i);
}
*/
System.out.println("外部执行核心线程,i="+i);
}
这篇关于java线程池开启多线程的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!