FunctionTailcall3 – funkce
Upozorní profiler, že aktuálně spuštěná funkce se chystá provést koncové volání jiné funkce.
Syntaxe
void __stdcall FunctionTailcall3 (FunctionOrRemappedID functionOrRemappedID);
Parametry
functionOrRemappedID
[v] Identifikátor aktuálně spuštěné funkce, která se chystá provést koncové volání.
Poznámky
Funkce FunctionTailcall3
zpětného volání upozorní profiler na volání funkcí. Pomocí metody ICorProfilerInfo3::SetEnterLeaveFunctionHooks3 zaregistrujte implementaci této funkce.
Funkce FunctionTailcall3
je zpětné volání; musíte ji implementovat. Implementace musí používat __declspec(naked)
atribut třídy úložiště.
Spouštěcí modul před voláním této funkce neukládá žádné registry.
Při vstupu musíte uložit všechny registry, které používáte, včetně těch v jednotce s plovoucí desetinou čárkou (FPU).
Při ukončení musíte zásobník obnovit tak, že zobrazíte všechny parametry, které byly vloženy volajícím.
Implementace FunctionTailcall3
by neměla blokovat, protože zpozdí uvolňování paměti. Implementace by se neměla pokoušet o uvolňování paměti, protože zásobník nemusí být ve stavu vhodném pro uvolňování paměti. Pokud dojde k pokusu o uvolnění paměti, modul runtime se zablokuje, dokud FunctionTailcall3
se nevrátí.
Funkce FunctionTailcall3
nesmí volat spravovaný kód ani žádným způsobem způsobit přidělení spravované paměti.
Požadavky
Platformy: Viz Požadavky na systém.
Záhlaví: CorProf.idl
Knihovny: CorGuids.lib
Verze rozhraní .NET Framework: K dispozici od 4