什么应该使用SystemV消息队列或POSIX消息队列?

时间:2014-01-23 09:26:37

标签: posix ipc

我应该在嵌入式Linux环境,System V消息队列或Posix消息队列中使用什么?什么在项目中普遍使用?

1 个答案:

答案 0 :(得分:3)

两者都有相同的基本工具 - 信号量,共享内存和消息队列。它们为这些工具提供了略微不同的界面,但基本概念是相同的。一个值得注意的区别是POSIX为Sys V不提供的消息队列提供了一些通知功能。 (见mq_notify()。)

Sys V IPC已经存在了很长时间,具有一些实际意义。

POSIX消息队列与System V消息队列相比还具有以下特定优势:

  1. 当消息到达先前空的队列时,消息通知功能允许通过信号或线程实例化异步通知(单个)进程。

  2. 在Linux上(但不是其他UNIX实现),可以使用poll(),select()和epoll()监视POSIX消息队列。 System V消息队列不提供此功能。