读书人

资料内存映射跟数据传输有什么关系

发布时间: 2013-01-07 10:02:25 作者: rapoo

文件内存映射跟数据传输有什么关系?
只知道文件内存映射是可以应用在数据共享上,可是有些数据传输软件也是应用到文件内存映射
[解决办法]
内存映射文件,顾名思义,即将一个文件从硬盘加载到内存中,这块内存一般有一个字符串类型的标识符,因此只要两个进程共同约定一个标识符,它们即可共享同一块内存,即达到数据传输的目的
[解决办法]

内存映射文件,是由一个文件到一块内存的映射。Win32提供了允许应用程序把文件映射到一个进程的函数 (CreateFileMapping)。内存映射文件与虚拟内存有些类似,通过内存映射文件可以保留一个地址空间的区域,同时将物理存储器提交给此区域,内存文件映射的物理存储器来自一个已经存在于磁盘上的文件,而且在对该文件进行操作之前必须首先对文件进行映射。使用内存映射文件处理存储于磁盘上的文件时,将不必再对文件执行I/O操作,使得内存映射文件在处理大数据量的文件时能起到相当重要的作用。

[解决办法]
当然对任何内存操作都需要异常保护,这是一个健壮的程序所必需的
[解决办法]
当然不是,你有一个程序发还得有一个程序定时查看该内存并接收才行。它只是提供了这么一个机制,至于你如何利用它,是要文件操作还是交换数据,那是你的事。正如闹钟可以闹人,也可以计时,但它只是个闹钟。。
[解决办法]
内存文件映射,不仅可以跨进程访问,还可以跨Session访问
[解决办法]
因此你可以跨用户传输数据
[解决办法]
2楼说的比较精辟了。 支持。
[解决办法]
举个例子吧:delphi的TMemoryStream就用了这一技术

读书人网 >.NET

热点推荐