线程池是线程的管理机制,它主要解决两方面问题:
1. 复用线程
2. 控制线程数量

JUC是什么?

  1. 是 java.util.concurrent这个包,concurrent并发的意思,是 java的并发包,里面都是与多线程相关的API。线程池就在这个包里

    创建线程池

    ```java //创建一个固定大小的线程池 ExecutorService threadPool = Executors.newFixedThreadPool(容量大小);

//交给线程池一个实现了Runnable的类对象,然后交了以后线程池会自己调用处理,就不用管了 threadPool.execute(Runnable command); ```

关闭线程池

  1. shutdown()
    该方法调用后,线程不再接收新任务,如果此时还调用execute()则会抛出异常
    并且线程池会继续将已经存在的任务全部执行完毕后才会关闭。(类比,商场关门了,不让进了,进的可以正常运行直到结束)
  2. shutdownNow()
    强制中断所有线程,来停止线程池(直接打断所有的线程,强制停止全部)