虚拟内存的按需调拨
windows C++ 虚拟内存的按需调拨
虚拟内存的按需调拨
/*------------------------------------------------------------------------
24-SEHAndMemory.cpp
演示虚拟内存的按需调拨
-----------------------------------------------------------------------*/
#include <windows.h>
#include <tchar.h>
#include <locale.h>
#define PAGELIMIT 80
LPBYTE lpNxtPage;
DWORD dwPages = 0;
DWORD dwPageSize;//页面大小,一般为4KB
INT PageFualtExceptionFilter(DWORD dwCode) {
LPVOID lpvResult;
//不是非法访问内存
if (dwCode != EXCEPTION_ACCESS_VIOLATION) {
//线程试图读写一个虚拟内存地址,但在这个地址它并不具备相应权限
return EXCEPTION_EXECUTE_HANDLER