c - 从Linux IPC消息队列中读取两次消息的方法

标签 c linux

每当从消息队列中读取消息时,消息就会被内核删除。

  1. 同一条消息是否可以阅读两次?
  2. 如何在同一进程或两个不同进程中读取同一消息两次?

最佳答案

您不能从队列中读取两次,读取而不删除称为查看,并且您无法在 POSIX 队列中查看。阅读 mq_overview(7) .

您可能应该设计您的软件来避免从队列中读取两次相同的数据(例如,通过添加适当的缓冲,可能是通过某些互斥体进行序列化或锁定)。

关于c - 从Linux IPC消息队列中读取两次消息的方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31531446/

相关文章:

c - 关于使用 SIGKILL 的说明

c - C 中 struct 类型变量的别名

c - 在 C 中使用套接字实现线程

linux - lubuntu/linux 符号链接(symbolic link)默认应用程序

c++ - 如何在linux中找到分配的内存

python - "File too short"与 Tableau 数据提取 API(Python 和 Linux)

检查 C/C++ 中动态加载的共享库中的变量类型

c - 如何创建 CUDA makefile 以便在 CPU 中执行以测试 CPU FLOP?

mysql - 如何找到 MySQL 守护程序错误日志的位置?

linux - 使用 Wine 安装 Microsoft Office