Posix消息队列和命令行?

时间:2015-06-11 15:03:57

标签: linux posix message-queue

我正在编写一些代码来替换带有POSIX消息队列的TCP套接字。有时程序会崩溃(仍处于开发阶段),并且不会删除已创建的队列(未执行:mq_close() + mq_unlink())。当我再次运行代码时,这会导致问题。

有没有办法使用命令行删除/删除这些队列?我尝试使用:ipcs -q。这无法列出任何队列。

我试过了:lsof | grep queue-name。他们确实出现在这里。

理想情况下,我想使用:ipcrm

1 个答案:

答案 0 :(得分:16)

POSIX IPC对象在虚拟文件系统中实现为文件。可以使用ls和rm列出和删除这些文件。要使用POSIX消息队列执行此操作,我们必须使用以下命令装入消息队列文件系统:

$ su
Password:
# mkdir /dev/mqueue
# mount -t mqueue none /dev/mqueue
# exit