ICorProfilerCallback::ExceptionCatcherEnter — Metoda
Powiadamia profilera, że kontrolka jest przekazywana do odpowiedniego catch
bloku.
Składnia
HRESULT ExceptionCatcherEnter(
[in] FunctionID functionId,
[in] ObjectID objectId);
Parametry
functionId
[in] Identyfikator funkcji zawierającej catch
blok.
objectId
[in] Identyfikator obsługiwanego wyjątku.
Uwagi
Metoda ExceptionCatcherEnter
jest wywoływana tylko wtedy, gdy punkt catch znajduje się w kodzie skompilowanym za pomocą kompilatora just in time (JIT). Wyjątek przechwycony w kodzie niezarządzanym lub w wewnętrznym kodzie środowiska uruchomieniowego nie wywoła tego powiadomienia. Wartość objectId
jest przekazywana ponownie, ponieważ odzyskiwanie pamięci mogło przenieść obiekt od momentu ExceptionThrown
powiadomienia.
Profiler nie powinien blokować w implementacji tej metody, ponieważ stos może nie znajdować się w stanie umożliwiającym odzyskiwanie pamięci i dlatego nie można włączyć odzyskiwania pamięci. Jeśli profiler zablokuje w tym miejscu i zostanie podjęta próba odzyskiwania pamięci, środowisko uruchomieniowe będzie blokowane do momentu powrotu tego wywołania zwrotnego.
Implementacja tej metody profilera nie powinna wywoływać kodu zarządzanego ani w żaden sposób powodować alokacji pamięci zarządzanej.
Wymagania
Platformy: Zobacz Wymagania systemowe.
Nagłówka: CorProf.idl, CorProf.h
Biblioteki: CorGuids.lib
wersje .NET Framework: dostępne od wersji 2.0