协作进程需要有一种进程间通信机制(简称 IPC),以允许进程相互交换数据与信息。进程间通信有两种基本模型:共享内存和消息传递(消息队列): 共享内存模型会建立起一块供协作进程共享的内存区域,进程通过向此共享区域读出或写入数据来交换信息。 消息传递模型通过在协作进程间交换消息来实现通信。 图1 给出了这两种模型的对比
首先消息队列也是两个进程间进行数据传输的一个方式,除了这个作用外,还有一点就是当不同进程间传送消息时,由于进程进耦合度较高(一个进程的改变可能会影响到另一个进程)为了隔离两个进程,在两个进程之间抽出一块空间(消息队列),两个进程间传递的所有消息都必须通过消息队列。 理解消息队列 1、基本概念 消息队列就...
消息队列是由操作系统替我们维护的,在同一时刻,操作系统可能会同时维护很多个消息队列,所以,为了辨别出每个消息队列,操作系统为每一个消息队列分配了一个唯一的标识id。 接下来看一看具体怎么去利用消息队列来实现进程间的通信。 创建一个消息队列--->需要往队列里边发消息--->往队列里边取消息--->通信结束后,要...