다음을 통해 공유


IHostMemoryManager::VirtualFree 메서드

해당 Win32 함수에 대한 논리적 래퍼 역할을 합니다. VirtualFree의 Win32 구현은 호출 프로세스의 가상 주소 공간 내에 있는 페이지 영역을 해제, 커밋 해제 또는 해제하고 커밋 해제합니다.

구문

HRESULT VirtualFree (  
    [in] LPVOID  lpAddress,  
    [in] SIZE_T  dwSize,  
    [in] DWORD   dwFreeType  
);  

매개 변수

lpAddress
[in] 해제할 가상 메모리 페이지의 기본 주소에 대한 포인터입니다.

dwSize
[in] 해제할 영역의 크기(바이트)입니다.

dwFreeType
[in] 해제 작업의 유형입니다.

Return Value

HRESULT 설명
S_OK VirtualFree가 성공적으로 반환되었습니다.
HOST_E_CLRNOTAVAILABLE CLR(공용 언어 런타임)이 프로세스에 로드되지 않았거나 CLR이 관리 코드를 실행하거나 호출을 성공적으로 처리할 수 없는 상태에 있습니다.
HOST_E_TIMEOUT 호출 시간이 초과되었습니다.
HOST_E_NOT_OWNER 호출자는 잠금을 소유하지 않습니다.
HOST_E_ABANDONED 차단된 스레드 또는 파이버가 이벤트를 기다리는 동안 이벤트가 취소되었습니다.
E_FAIL 알 수 없는 치명적인 오류가 발생했습니다. 메서드가 E_FAIL을 반환하면 CLR은 더 이상 프로세스 내에서 사용할 수 없습니다. 호스팅 메서드에 대한 후속 호출은 HOST_E_CLRNOTAVAILABLE을 반환합니다.
HOST_E_INVALIDOPERATION 호스트를 통해 할당되지 않은 메모리를 해제하려고 했습니다.

설명

VirtualFreelpAddressIHostMemoryManager::VirtualAlloc 함수에 대한 이전 호출을 통해 매개 변수와 연결된 가상 메모리 페이지를 해제합니다. 호스트를 통해 할당되지 않은 메모리를 해제하려고 시도하면 HOST_E_INVALIDOPERATION이 반환되어야 합니다.

의미 체계는 VirtualFree의 Win32 구현에 대한 의미 체계와 동일합니다. 자세한 내용은 Windows 플랫폼 설명서를 참조하세요.

요구 사항

플랫폼:시스템 요구 사항을 참조하세요.

헤더: MSCorEE.h

라이브러리: 리소스로 MSCorEE.dll에 포함됩니다.

.NET Framework 버전: 2.0부터 사용 가능

참고 항목