目录
- 什么是线程池?
- 线程池的作用
- 原子操作
什么是线程池?
线程池维护着一个任务队列和多个线程;任务队列接收并存储客户请求,提前创建好的多个线程等待着监督管理者分配可并发执行的任务。
线程池的作用
- 提高一定的效率:有任务时,有现有的线程可以立即进行服务,省掉了线程创建的时间(只在执行小型任务时效率提升较明显)
- 降低资源消耗:通过重用已经创建的线程来降低线程创建和销毁的消耗
- 降低了程序的耦合程度:线程池中的生产消费者模型降低了程序的耦合程度,提高了程序的运行效率
原子操作
所谓原语操作是指一个操作中的所有动作,要么成功完成,要么还没有开始做。也就是说,原语操作是一个不可分割的整体。为了保证原语操作的正确性,必须保证原语具有原子性。在单机环境下,操作的原子性一般是通过关中断来实现的。由于中断是计算机与外设通信的重要手段,关中断会对系统产生很大的影响,所以在实现时一定要避免原语操作花费时间过长,绝对不允许原语中出现死循环。