能力值:
(RANK:210 )
|
-
-
2 楼
内存映射文件不是把文件放入内存,可以节省内存,而且还可以进程之间互访数据。
坏处就是用起来麻烦点。
|
能力值:
( LV3,RANK:20 )
|
-
-
3 楼
虚心学习。
那么直接用OpenFile()打开后,用ReadFile()之间有什么区别??
|
能力值:
( LV12,RANK:1010 )
|
-
-
4 楼
OpenFile() 打开文件句柄, ReadFile() 读入文件数据到缓冲区.
这2个API 都是在实际内存中进行操作的.
而内存映射 与虚拟内存相似, 节省了系统页文件空间,速度快,可用于进程间共享数据...
不懂的查阅SDK
|
能力值:
( LV9,RANK:850 )
|
-
-
5 楼
msdn好用哈,
文件内存映射好用,除了映射麻烦点之外,速度快,呵呵呵`
|
能力值:
( LV9,RANK:290 )
|
-
-
6 楼
专家,都是专家!
顶!~~~~```
|
能力值:
(RANK:450 )
|
-
-
7 楼
内存映射一开始并不对应任何内存页,系统只给它一片连续的虚拟地址(在页表上这些虚拟地址没有对应任何内存),当你访问内存映射区域时,将导致缺页异常,CPU将进入缺页中断处理函数,在这里面分配真实可用的内存,并映射到刚才产生异常的位置,由于内存映射的核心工作都是缺页中断处理函数在做,这也是为什么内存映射内存大小的单位是页的原因
具体读文件的就不说了,因此可见,内存映射在处理比较大文件的时候,比较有优势
|
能力值:
( LV3,RANK:20 )
|
-
-
8 楼
学习了,谢谢大家能够耐心回答我,帮助我这个菜鸟成长阿。。
|
能力值:
( LV2,RANK:10 )
|
-
-
9 楼
如果我要把一个文件映射到某进程的0x123abc中去
该如何操作?
MapViewOfFileEx最后一个参数是什么?
|
能力值:
(RANK:1010 )
|
-
-
10 楼
MapViewOfFileEx最后一个参数,表示目标位置
MapViewOfFileEx ( ……, 0x123abc )
但不一定能成功,有可能该地址已经被占用,或者从该地址开始的空间不够
都可能导致失败,通过返回值来判断
|
|
|