参考 手写线程池 - C语言版 | 爱编程的大丙 (subingwen.cn)
目录
(1)任务队列(负责保存要处理的任务,并将任务交给工作线程去处理)
(2)工作者线程(任务队列的消费者、执行人员,动态创建N个)
1.为什么需要线程池?
1)线程问题:
(1)如果只使用线程创建函数,在不断有新的任务进来的时候,需要不断的创建任务;任务在结束之后,为了避免占用资源,需要销毁线程任务。导致频繁操作,占用程序运行时间。
(2)在线程创建之后,如果任务已经运行完毕,线程不去销毁,则会白白浪费资源。
2)如何解决线程问题(线程池的优势):
(1)使用线程池之后