多线程和线程池
Posted m.z
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了多线程和线程池相关的知识,希望对你有一定的参考价值。
有这样一个需求:你有一个list集合,需要使用该集合作为参数,调用另一个系统并返回结果后处理它(主要的目的是处理结果)
解决方案:用线程池,不关闭线程池,将多个线程放入一个List集合中,使用invokeAll方法,相当于是将多个线程打包执行,统一返回,这样线程池可以一直不关闭,不用为了一个list开一个线程池,并且多个线程打包调用不会造成和其他用户的多线程冲突(究竟是你的线程还是我的线程)。
ExecutorService cachedThreadPool = Executors.newCachedThreadPool();
cachedThreadPool.invokeAll(List<new exeRuleThread implement Callable<Objec>>);
以上是关于多线程和线程池的主要内容,如果未能解决你的问题,请参考以下文章