线程池是什么?
线程池就是创建若干个可执行的线程放入一个池(容器)中,有任务需要处理时,会提交到线程池中的任务队列,处理完之后线程并不会被销毁,而是仍然在线程池中等待下一个任务。 线程池中线程的数量通常完全取决于可用内存数量和应用程序的需求。
标准库中的线程池,我们直接看代码演示:
我们要自己实现一个线程池需要以下几个步骤:
1、先描述任务(直接使用Runnable)
2、需要组织任务(直接使用BlockingQueue)
3、能够描述工作线程
4、需要组织这些线程
5、需要实现往线程池里添加任务
最后我们实现main函数的代码:
运行结果: