1. 首页
  2. 数据库
  3. 其它
  4. 利用C++如何实现一个阻塞队列详解

利用C++如何实现一个阻塞队列详解

上传者: 2020-12-22 08:45:32上传 PDF文件 63.04KB 热度 9次
阻塞队列是多线程中常用的数据结构,对于实现多线程之间的数据交换、同步等有很大作用。 阻塞队列常用于生产者和消费者的场景,生产者是向队列里添加元素的线程,消费者是从队列里取元素的线程。简而言之,阻塞队列是生产者用来存放元素、消费者获取元素的容器。 考虑下,这样一个多线程模型,程序有一个主线程 master 和一些 worker 线程,master 线程负责接收到数据,给 worker 线程分配数据,worker 线程取得一个任务后便可以开始工作,如果没有任务便阻塞住,节约 cpu 资源。 master 线程 (生产者):负责往阻塞队列中塞入数据,并唤醒正在阻塞的 worker 线程。
下载地址
用户评论