linux下消息队列, 如何在满足某种条件下将队列清空?

操作系统课上一个作业, 要求是用消息队列来实现某些功能
已知消息队列的特性 : 可以多个进程接受相同消息, 可知队列中的消息是不会消失的
目前所想的是用3个进程, 每个进程都有2个线程
1: 将消息发送到消息队列, 用while(1)不断等待读入
2: 从消息队列中接收消息, 用while(1)不断读取消息队列
如此类似一个群聊的功能
问题是 :
当某个进程送入消息, 3个进程都读取完毕后,
如何将队列中的消息清空?
而不是持续循环读取

展开
收起
杨冬芳 2016-07-15 11:38:53 3746 分享 版权
1 条回答
写回答
取消 提交回答
  • IT从业

    设置一个信号量等 触发了就清空

    2019-07-17 19:56:50
    赞同 展开评论

涵盖 RocketMQ、Kafka、RabbitMQ、MQTT、轻量消息队列(原MNS) 的消息队列产品体系,全系列产品 Serverless 化。RocketMQ 中文社区:https://rocketmq-learning.com/

还有其他疑问?
咨询AI助理