11.muduo学习笔记之base_BoundedBlockingQueue.{h&cc}

本文深入解析muduo库中实现的有界缓冲区,包括其类说明、功能、继承关系、成员变量及函数说明。重点介绍muduo锁、条件变量封装、循环容器boost::circular_buffer的使用,以及消费生产者队列的实现。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1. 类说明

1. 功能

  • muduo的有界缓冲区

2. 继承

  1. noncopyable

2. 成员变量说明

  1. mutex_
    • 前面几篇说的很详细了,muduo锁
  2. notEmpty_
    • 条件变量的封装,详见前几篇
  3. notFull_
    • 条件变量
  4. queue_
    • boost::circular_buffer变量,这是一个循环容器,它的capcity是固定的,常用来实现有界队列(消费生产者队列),具体用法自行百度

3. 成员函数说明

1. 普通

  1. 构造函数
    • 所有变量的初始化
  2. put(const T&)
    • 加数据,条件变量发信号
  3. put(T&&)
    • 参数为右值引用,上一篇已经说过这个问题
  4. take()
    • 取数据,notFull发信号
  5. empty()
    • 看队列是否为空
  6. full()
    • 看队列是否满
  7. size()
    • 返回队列当前使用的大小
  8. capacity()
    • 返回队列容量,注意这个容器是circular_buffer类型
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值