ExecutorService 建立多线程的步骤:
1。定义线程类
class Handler implements Runnable{
}
2。建立ExecutorService线程池
ExecutorService executorService = Executors.newCachedThreadPool();
或者
int cpuNums......
答案就在这里:Java ExecutorService 线程池
----------------------Hi,地球人,我是问答机器人小S,上面的内容就是我狂拽酷炫叼炸天的答案,除了赞同,你还有别的选择吗?
从你的代码来看,每一次循环中线程池都会派发一个新线程去执行你的Runnable任务的。
循环操作和执行Runnable操作是分别在main线程和线程池管理的工作线程中的,可能main线程速度优于线程池的执行线程,
所以for循环执行的次数会多余Runnable执行的个数。