【发布时间】:2020-04-25 19:24:33
【问题描述】:
我想从 POSIX 消息队列中删除所有消息。我在互联网上搜索,但没有找到任何方法,而是找到了删除消息队列本身的方法,但这不是我的情况,我实际上想从消息队列中清除所有待处理的消息。
我正在阅读手册页,其中找到了用于控制消息队列参数的mq_setattr API。我只是想知道如果我使用mq_setattr 将mq_curmsgs 的值设置为0,它会清除队列中的待处理消息吗?
在这方面的任何帮助将不胜感激
【问题讨论】:
-
同样来自 mq_setattr 的手册页:唯一可以修改的属性是 mq_flags 中 O_NONBLOCK 标志的设置。 newattr 中的其他字段将被忽略。
标签: c linux posix ipc message-queue