内存映射文件与内存读写实现进程间通信的比较
2011-11-30 17:04
393 查看
内存映射文件与内存读写都可以实现进程间通信,其两者的差别如下:
1、内存写需要手工申请内存以得到内存的起始地址和手工释放内存,而利用内存映射文件则不需要,映射完之后直接即可得到内存的起始地址,但是在用完之后要记得释放内核对象File、Map,Mapview等,否则会造成内存泄露。
2、内存读写利用的是windows消息来传递起始地址指针,而内存映射文件利用内核对象的共享来实现进程间通信。
3、内存读写方式利用的是找到对方进程后,对其内存进行读写。内存映射方式是创建一个内核对象来实现内存的共享。
总之:两者都是以找到一块内存地址相同的区域,返回其基地址后对共享内存进行操作。
1、内存写需要手工申请内存以得到内存的起始地址和手工释放内存,而利用内存映射文件则不需要,映射完之后直接即可得到内存的起始地址,但是在用完之后要记得释放内核对象File、Map,Mapview等,否则会造成内存泄露。
2、内存读写利用的是windows消息来传递起始地址指针,而内存映射文件利用内核对象的共享来实现进程间通信。
3、内存读写方式利用的是找到对方进程后,对其内存进行读写。内存映射方式是创建一个内核对象来实现内存的共享。
总之:两者都是以找到一块内存地址相同的区域,返回其基地址后对共享内存进行操作。
相关文章推荐
- 总结:内存映射文件与内存读写实现进程间通信的比较
- java nio 使用内存映射文件实现进程间通信
- Java NIO 内存映射文件实现进程间通信
- Java NIO 应用 -- 使用内存映射文件实现进程间通信
- UNIX环境高级编程学习之第十五章进程间通信 - 两个进程通过映射普通文件实现共享内存通信
- Java NIO 应用 -- 使用内存映射文件实现进程间通信
- Java NIO 内存映射文件实现进程间通信
- 用文件映射(File Mapping)实现进程间内存共享
- 进程间通信:用信号量实现对共享内存读写顺序的控制
- 利用java内存映射文件机制实现CRC循环冗余校验
- C/C++(5)实现大数据文件的内存映射机制
- 内存映射文件实现多进程通信
- Java编程的逻辑 (61) - 内存映射文件及其应用 - 实现一个简单的消息队列
- 【JavaNIO的深入研究4】内存映射文件I/O,大文件读写操作,Java nio之MappedByteBuffer,高效文件/内存映射
- 内存文件映射-进程间通信
- 进程间通信:用信号量实现对共享内存读写顺序的控制
- 映射文件到内存,像操作内存一样方便读写文件——MemFile
- [转][VC/MFC]关于内存映射文件技术处理大文件的读写
- java大文件读写操作,java nio 之MappedByteBuffer,高效文件/内存映射
- 内存读写函数实现进程间通信