繁体   English   中英

MapViewOfFile 是否可以两次返回相同的地址?

[英]Is it possible for MapViewOfFile to return the same address twice?

早上好, MapViewOfFile 是否可以两次返回相同的地址? 但是,当 UnmapViewOfFile 必须取消映射同一地址两次时,它会出现异常行为。 我们收到错误 487:地址无效。 下面是一些伪代码,展示了我们如何使用 MapViewOfFile 和 UnMapViewOfFile:

retval =    UnmapViewOfFile(TmpPrevMapPtr);            
if (retval == 0){
    DWORD lasterr = GetLastError();
    printf("UNMAP Last Error = %d ...
      }

  MapPtr = (char*)::MapViewOfFile( hMapping, FILE_MAP_WRITE | FILE_MAP_READ,0,baseoff,
mappedlength);
  if (MapPtr == 0){
    throw cException(ERR_MEMORYMAPPING,TempFileName);
  }

  Thank you.

在您执行UnmapViewOfFile之后,该虚拟地址可免费用于其他操作。 所以是的,后续的MapViewOfFile可能会返回这个地址。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM