ICorProfilerInfo4::RequestRevert-Methode
Setzt alle Instanzen der angegebenen Funktionen auf die ursprünglichen Versionen zurück.
Syntax
HRESULT RequestRevert (
[in] ULONG cFunctions,
[in, size_is(cFunctions)] ModuleID moduleIds[],
[in, size_is(cFunctions)] mdMethodDef methodIds[],
[out, size_is(cFunctions)] HRESULT status[]);
Parameter
cFunctions
[in] Die Anzahl der zurückzusetzenden Funktionen.
moduleIds
[in] Gibt den moduleId
-Teil der (module
, methodDef
)-Paare an, mit denen die zurückzusetzenden Funktionen identifiziert werden.
methodIds
[in] Gibt den methodId
-Teil der (module
, methodDef
)-Paare an, mit denen die zurückzusetzenden Funktionen identifiziert werden.
status
[out] Ein Array von HRESULTs, das im Abschnitt "Status HRESULTs" weiter unten in diesem Thema aufgeführt ist. Jedes HRESULT gibt das erfolgreiche oder fehlgeschlagene Zurücksetzen der einzelnen Funktionen an, die in den parallelen Arrays moduleIds
und methodIds
angegeben sind.
Rückgabewert
Diese Methode gibt die folgenden spezifischen HRESULTs sowie HRESULT-Fehler zurück, die Methodenfehler anzeigen.
HRESULT | BESCHREIBUNG |
---|---|
S_OK | Es wurde versucht, alle Anforderungen zurückzusetzen. Das zurückgegebene Statusarray muss jedoch überprüft werden, um zu bestimmen, welche Funktionen erfolgreich zurücksetzt wurden. |
CORPROF_E_CALLBACK4_REQUIRED | Der Profiler muss die ICorProfilerCallback4-Schnittstelle implementieren, damit dieser Aufruf unterstützt wird. |
CORPROF_E_REJIT_NOT_ENABLED | Die JIT-Neukompilierung wurde nicht aktiviert. Sie müssen die JIT-Neukompilierung während der Initialisierung mithilfe der ICorProfilerInfo:: SetEventMask-Methode aktivieren, um das COR_PRF_ENABLE_REJIT -Flag festzulegen. |
E_INVALIDARG | cFunctions ist 0, oder moduleIds oder methodIds ist NULL . |
E_OUTOFMEMORY | Die CLR konnte die Anforderung nicht abschließen, da nicht genügend Arbeitsspeicher vorhanden war. |
Status HRESULTS
Statusarray HRESULT | Beschreibung |
---|---|
S_OK | Die entsprechende Funktion wurde erfolgreich zurückgesetzt. |
E_INVALIDARG | Der moduleID -Parameter oder der methodDef -Parameter ist NULL . |
CORPROF_E_DATAINCOMPLETE | Das Modul ist noch nicht vollständig geladen, oder es wird gerade entladen. |
CORPROF_E_MODULE_IS_DYNAMIC | Das angegebene Modul wurde dynamisch generiert (z. B. durch Reflection.Emit ). Daher wird es von dieser Methode nicht unterstützt. |
CORPROF_E_ACTIVE_REJIT_REQUEST_NOT_FOUND | Die angegebene Funktion konnte von der CLR nicht zurückgesetzt werden, da keine entsprechende aktive Neukompilierungsanforderung gefunden wurde. Entweder wurde die Neukompilierung nie angefordert, oder die Funktion wurde bereits zurückgesetzt. |
Andere | Das Betriebssystem hat einen Fehler außerhalb der Kontrolle der CLR zurückgegeben. Wenn beispielsweise ein Systemaufruf zum Ändern des Zugriffsschutz einer Speicherseite fehlschlägt, wird der Betriebssystemfehler angezeigt. |
Bemerkungen
Beim nächsten Aufruf einer der zurückgesetzten Funktionsinstanzen werden die ursprünglichen Versionen der Funktionen ausgeführt. Wenn eine Funktion bereits ausgeführt wird, wird die Ausführung der aktiven Version abgeschlossen.
Anforderungen
Plattformen: Informationen finden Sie unter Systemanforderungen.
Header: CorProf.idl, CorProf.h
Bibliothek: CorGuids.lib
.NET Framework-Versionen: Seit Version 4.5 verfügbar