Qt进程间通信IPC
2014年8月29日
1 概述
共享内存是由系统提供一个共享内存区域,供不同的进程共享。因此需要提供给系统一个识别码作为共享内存的名称,并指定需要的内存区域大小。
2 原理
在需要读写内存是,需要连接到此区域(如果是第一次,则需要创建此区域)。然后可以读写此区域的内容。读写完成后要断开连接。操作系统负责此区域内存的分配和释放,维护一个连接列表,如果没有连接,则自动释放。
由于共享内存是由操作系统实际完成的,因此不同的操作系统实际上提供不同的方法。
Qt对不同的系统提供了统一封装,但是如果不在Qt应该程序中使用,则应该使用原始方式(读写应该使用相同的方式),这样才能在非Qt应用程序中使用(与非QT交互时,只能使用原始方式,因为QT会对Key进行改变)。