进程间的通信形式
1.管道 pipe
2.套接字 socket
3.信号 signal
4.信号量 semaphore
5.共享内存:share memory
上述几种确实满足了通信,但是却没有解决共享大量数据的问题,共享内存形似pipe单,但是共享内存要求进程需在同一物理机上,且对于共享内存的访问是随机的,而不是pipe的一端写另一端读。
注:使用全局变量在进程间通信不能称为 共享内存
6.消息队列:mq
就是一种队列数据结构,新来的消息在队列尾部,从头部获取消息,但是它不是pipe,因为pipe需要单独的读写进程,且只能点对点的通信,而消息队列可以同时支持多个进程,支持多个进程读写。消息队列只在内存中实现