一个进程在实时的更新一个文件。
另外一个进程通过内存映射读这个文件。
我现在发现,建立映射以后,内存中的数据并没有随着文件的更新而更新。
请问是不是需要对这个文件重新建立内存映射才能获取更新的内容呢?

解决方案 »

  1.   

    第一个进程没有使用内存映射文件。
    如果必须重新映射的话,那我就不用内存映射文件了,因为文件本身比较小;我原来以为不需要映射,这样能快一些;如果必须重新映射的话,那速度反而不如把文件读入内存了。
    但是,必须重新映射这事儿,MSDN好像没说啊...
      

  2.   

    可以得到变动后的文件内容
    大家实验一下
    不能得到变动后的文件内容,只有一个可能:该文件不在本机,而是共享过来的remote file。