C++ Pagefile支持的内存映射文件与堆——什么';有什么区别?
使用由系统分页文件支持的内存映射文件(通过C++ Pagefile支持的内存映射文件与堆——什么';有什么区别?,c++,c,winapi,heap,memory-mapped-files,C++,C,Winapi,Heap,Memory Mapped Files,使用由系统分页文件支持的内存映射文件(通过CreateFileMapping(无效的\u HANDLE\u值,…))有什么好处,而不是像通常那样从堆中分配内存(malloc(…),HeapAlloc(…)),等等) i、 e.我应该在什么时候使用哪个?它的级别较低,它提供给您的比malloc提供的更多: 您可以与其他进程共享映射(当然,您还需要同步) 您可以设置对内存的权限(例如,您可以通过PAGE\u READONLY拥有只读内存) 您可以设置一些缓存/页面参数 它还应避免复制文件两次。共享
CreateFileMapping(无效的\u HANDLE\u值,…)
)有什么好处,而不是像通常那样从堆中分配内存(malloc(…)
,HeapAlloc(…)
),等等)
i、 e.我应该在什么时候使用哪个?它的级别较低,它提供给您的比
malloc
提供的更多:
- 您可以与其他进程共享映射(当然,您还需要同步)
- 您可以设置对内存的权限(例如,您可以通过
拥有只读内存)PAGE\u READONLY
- 您可以设置一些缓存/页面参数