OfferVirtualMemory 함수(memoryapi.h)
다양한 메모리 페이지에 포함된 데이터는 애플리케이션에서 더 이상 필요하지 않으며 필요한 경우 시스템에서 삭제할 수 있음을 나타냅니다.
지정된 페이지는 액세스할 수 없는 것으로 표시되고 프로세스 작업 집합에서 제거되며 페이징 파일에 기록되지 않습니다.
나중에 제공된 페이지를 회수하려면 ReclaimVirtualMemory를 호출합니다.
구문
DWORD OfferVirtualMemory(
[in] PVOID VirtualAddress,
[in] SIZE_T Size,
[in] OFFER_PRIORITY Priority
);
매개 변수
[in] VirtualAddress
제공할 메모리의 페이지 맞춤 시작 주소입니다.
[in] Size
제공할 메모리 영역의 크기(바이트)입니다. 크기 는 시스템 페이지 크기의 정수 배수여야 합니다.
[in] Priority
우선 순위는 제공된 메모리가 애플리케이션에 얼마나 중요한지를 나타냅니다. 우선 순위가 높을수록 ReclaimVirtualMemory를 호출할 때 제공된 메모리를 그대로 회수할 가능성이 증가합니다. 시스템은 일반적으로 우선 순위가 높은 메모리를 삭제하기 전에 우선 순위가 낮은 메모리를 삭제합니다. 우선 순위는 다음 값 중 하나여야 합니다.
반환 값
성공하면 ERROR_SUCCESS. 그렇지 않으면 시스템 오류 코드 입니다.
설명
제공된 페이지를 회수하려면 ReclaimVirtualMemory를 호출합니다. 회수된 페이지의 데이터는 삭제되었을 수 있습니다. 이 경우 메모리 영역의 내용이 정의되지 않았으며 애플리케이션에서 다시 작성해야 합니다.
잠긴 가상 메모리를 제공하기 위해 OfferVirtualMemory 를 호출하지 마세요. 이렇게 하면 지정된 페이지 범위의 잠금이 해제됩니다.
가상 메모리를 제공하고 회수하는 것은 MEM_RESET 및 MEM_RESET_UNDO 메모리 할당 플래그를 사용하는 것과 유사합니다. 단, OfferVirtualMemory 는 프로세스 작업 집합에서 메모리를 제거하고 회수될 때까지 제공된 페이지에 대한 액세스를 제한합니다.
요구 사항
요구 사항 | 값 |
---|---|
지원되는 최소 클라이언트 | Windows 8.1 Update [데스크톱 앱 | UWP 앱] |
지원되는 최소 서버 | R2 업데이트 Windows Server 2012 [데스크톱 앱 | UWP 앱] |
대상 플랫폼 | Windows |
헤더 | memoryapi.h(Windows.h, Memoryapi.h 포함) |
라이브러리 | onecore.lib |
DLL | Kernel32.dll |