区别:举个例子,同样是把一个大文件读到内存中,采用内存映射文件的话,我们在写这个文件的时候其实是直接写硬盘上的文件,而虚拟内存的话其实对于用户来说是透明的,本质上还是把这个文件先读到内中,然后在内存里改这个文件,改完后再写回到原始文件中。

 

可以理解为:在默认情况下读写文件时文件都会从硬盘加载到物理内存中,如果内存不够的话都会走虚拟内存,不需要程序员额外操作。而采用内存映射文件的话需要程序员显示地指定读取文件的方式,也就是用内存映射文件的方式读取文件,这时候文件就不会被加载到物理内存中,还是保留在硬盘里。

posted on 2020-04-01 12:46  ximenchuixie  阅读(376)  评论(0编辑  收藏  举报