Freigeben über


IHostMemoryManager::VirtualFree-Methode

Aktualisiert: November 2007

Dient als logischer Wrapper für die entsprechende Win32-Funktion. Die Win32-Implementíerung von VirtualFree bewirkt, dass ein Bereich von Seiten innerhalb des virtuellen Adressraums des aufrufenden Prozesses freigegeben und/oder ein Decommit dafür durchgeführt wird.

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

Parameter

  • lpAddress
    [in] Ein Zeiger auf die Basisadresse der virtuellen Arbeitsspeicherseiten, die freigegeben werden sollen.

  • dwSize
    [in] Die Größe des Bereichs, der freigegeben werden soll, in Bytes.

  • dwFreeType
    [in] Der Typ des freigebenden Vorgangs.

Rückgabewert

HRESULT

Beschreibung

S_OK

VirtualFree kehrte erfolgreich zurück.

HOST_E_CLRNOTAVAILABLE

Die Common Language Runtime (CLR) wurde nicht in einen Prozess geladen oder befindet sich in einem Zustand, in dem sie weder verwalteten Code ausführen noch den Aufruf erfolgreich verarbeiten kann.

HOST_E_TIMEOUT

Der Aufruf hat das Zeitlimit überschritten.

HOST_E_NOT_OWNER

Der Aufrufer ist nicht Besitzer der Sperre.

HOST_E_ABANDONED

Ein Ereignis wurde abgebrochen, während ein blockierter Thread oder eine blockierte Fiber auf das Ereignis gewartet hat.

E_FAIL

Ein unbekannter, schwerwiegender Fehler ist aufgetreten. Wenn eine Methode E_FAIL zurückgibt, kann die CLR innerhalb des Prozesses nicht mehr verwendet werden. Nachfolgende Aufrufe von Hostmethoden geben HOST_E_CLRNOTAVAILABLE zurück.

HOST_E_INVALIDOPERATION

Es wurde versucht, Arbeitsspeicher freizugeben, der nicht vom Host reserviert wurde.

Hinweise

VirtualFree gibt virtuelle Arbeitsspeicherseiten frei, die dem lpAddress-Parameter durch einen früheren Aufruf der IHostMemoryManager::VirtualAlloc-Funktion zugeordnet wurden. Versuche, Arbeitsspeicher freizugeben, der nicht durch den Host reserviert wurde, sollten HOST_E_INVALIDOPERATION zurückgeben.

Die Semantik ist mit jener der Win32-Implementierung von VirtualFree identisch. Weitere Informationen finden Sie in der Dokumentation zur Windows-Plattform.

Anforderungen

Plattformen: siehe Systemanforderungen für .NET Framework.

Header: MSCorEE.idl

Bibliothek: als Ressource in MSCorEE.dll enthalten

.NET Framework-Versionen: 3.5 SP1, 3.5, 3.0 SP1, 3.0, 2.0 SP1, 2.0

Siehe auch

Referenz

IHostMemoryManager

IHostMAlloc