微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

pipe道vs味精队列

@H_404_0@消息队列和Linux中的pipe道有什么区别?

@H_404_0@使用WM_copYDATA在进程之间发送数据

@H_404_0@使用WaitOne命名互斥体为IPC时,是否可以使用空的while代码块?

@H_404_0@共享内存使用信号量进行安全写入

@H_404_0@Unix IPC套接字:closures一端而不读取它

@H_404_0@Nginx和后端服务器之间的IPC机制是什么?

@H_404_0@关闭我的头顶上,假设你谈论posix消息队列(而不是SysV的):

@H_404_0@管道的大小不限,消息队列是。

@H_404_0@虽然Linux支持mqd_t上的select() , poll() , epoll()和朋友,但管道可以集成在使用文件描述符的系统中,消息队列有自己的一套功能

@H_404_0@管道一旦关闭,需要双方进行一定程度的合作才能重新建立,消息队列可以在另一端封闭并重新开放,而不需要另一端的合并。

@H_404_0@管道是扁平的,就像一个流,强加一个消息结构,你将不得不在双方都实现一个协议,消息队列已经是消息导向,不必考虑队列中的第五条消息。

@H_404_0@他们是非常不同的东西,真的。

@H_404_0@最大的实际区别是一个管道没有“消息”的概念,它只是一个将字节write()和read()字节的管道。 接收端必须有一种方法来知道在你的程序中哪些数据构成了“消息”,你必须自己实现这一点。 此外,还定义了字节的顺序:字节将按照您输入的顺序输出。一般来说,它有一个输入和一个输出

@H_404_0@消息队列用于传输具有类型和大小的“消息”。 所以接收端可以等待一个特定类型的“消息”,如果这个消息是完整的,你不必担心。 多个进程可能发送到同一队列并从中接收。

@H_404_0@请参阅man mq_overview和/或man svipc以获取更多信息。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐