ICorProfilerInfo4::RequestRevert – metoda

Vrátí všechny instance zadaných funkcí na původní verze.

Syntaxe

HRESULT RequestRevert (  
   [in] ULONG    cFunctions,  
   [in, size_is(cFunctions)]  ModuleID    moduleIds[],  
   [in, size_is(cFunctions)]  mdMethodDef methodIds[],  
   [out, size_is(cFunctions)]  HRESULT status[]);  

Parametry

cFunctions
[v] Počet funkcí, které se mají vrátit.

moduleIds
[v] Určuje moduleId část párů (module, methodDef), které identifikují funkce, které se mají vrátit zpět.

methodIds
[v] Určuje methodId část párů (module, methodDef), které identifikují funkce, které se mají vrátit zpět.

status
[out] Pole HRESULTs uvedené v části "Stav HRESULTs" dále v tomto tématu. Každá hodnota HRESULT označuje úspěch nebo selhání pokusu o vrácení všech funkcí zadaných v paralelních polích moduleIds a methodIds.

Návratová hodnota

Tato metoda vrátí následující konkrétní hodnoty HRESULT a také chyby HRESULT, které značí selhání metody.

HRESULT Description
S_OK Došlo k pokusu o vrácení všech žádostí. Vrácené pole stavu však musí být zkontrolováno, aby bylo možné určit, které funkce byly úspěšně vráceny zpět.
CORPROF_E_CALLBACK4_REQUIRED Profiler musí implementovat ICorProfilerCallback4 rozhraní, aby toto volání bylo podporováno.
CORPROF_E_REJIT_NOT_ENABLED Rekompilace JIT nebyla povolena. Při inicializaci je nutné povolit rekompilace JIT pomocí metody ICorProfilerInfo::SetEventMask nastavit COR_PRF_ENABLE_REJIT příznak.
E_INVALIDARG cFunctions je 0 nebo moduleIds je methodIdsNULL.
E_OUTOFMEMORY ClR nemohl dokončit požadavek, protože mu došla paměť.

Stav HRESULTS

Stavové pole HRESULT Description
S_OK Odpovídající funkce se úspěšně vrátila zpět.
E_INVALIDARG Parametr moduleID nebo methodDef je NULL.
CORPROF_E_DATAINCOMPLETE Modul ještě není plně načtený nebo je v procesu uvolnění.
CORPROF_E_MODULE_IS_DYNAMIC Zadaný modul se vygeneroval dynamicky (například pomocí Reflection.Emit). Proto není tato metoda podporována.
CORPROF_E_ACTIVE_REJIT_REQUEST_NOT_FOUND Modul CLR nemohl vrátit zpět zadanou funkci, protože nebyl nalezen odpovídající aktivní požadavek na rekompilace. Buď se o rekompilace nikdy nepožadovala, nebo se funkce už vrátila zpět.
Jiné Operační systém vrátil chybu mimo kontrolu modulu CLR. Pokud například dojde k selhání systémového volání pro změnu ochrany přístupu na stránce paměti, zobrazí se chyba operačního systému.

Poznámky

Při příštím zavolání kterékoli z instancí vrácených funkcí se spustí původní verze funkcí. Pokud už je funkce spuštěná, dokončí spuštění verze, která je spuštěná.

Požadavky

Platformy: Viz Požadavky na systém.

Záhlaví: CorProf.idl, CorProf.h

Knihovny: CorGuids.lib

Verze rozhraní .NET Framework: K dispozici od verze 4.5

Viz také