Sdílet prostřednictvím


ObjectiveCMarshal.UnhandledExceptionPropagationHandler Delegát

Definice

Obslužná rutina pro neošetřené výjimky překračující spravovanou> nativní hranici (to znamená reverse P/Invoke).

public: delegate delegate* unmanaged<IntPtr , void> ^ ObjectiveCMarshal::UnhandledExceptionPropagationHandler(Exception ^ exception, RuntimeMethodHandle lastMethod, [Runtime::InteropServices::Out] IntPtr % context);
public delegate delegate* unmanaged<IntPtr, void> ObjectiveCMarshal.UnhandledExceptionPropagationHandler(Exception exception, RuntimeMethodHandle lastMethod, out IntPtr context);
type ObjectiveCMarshal.UnhandledExceptionPropagationHandler = delegate of Exception * RuntimeMethodHandle * nativeint -> delegate* unmanaged<nativeint, unit>
Public Delegate Function ObjectiveCMarshal.UnhandledExceptionPropagationHandler(exception As Exception, lastMethod As RuntimeMethodHandle, ByRef context As IntPtr) As delegate* unmanaged< As IntPtr, Void> 

Parametry

exception
Exception

Neošetřená výjimka.

lastMethod
RuntimeMethodHandle

Poslední spravovaná metoda.

context
IntPtr

nativeint

Kontext poskytnutý vrácený ukazatel funkce

Návratová hodnota

delegate* unmanaged<IntPtr, Void>

delegate* unmanaged<nativeint, Void>

Zpětné volání šíření výjimek.

Poznámky

Pokud obslužná rutina dokáže správně rozšířit spravovanou výjimku do nativního prostředí, může se vrátit nespravované zpětné volání, jinak null. Jedná se RuntimeMethodHandle o poslední spravovanou metodu, která byla spuštěna před opuštěním modulu runtime. Spolu se vráceným zpětným voláním může obslužná rutina vrátit kontext, který bude předán zpětnému volání během odesílání.

Vrácená obslužná rutina bude při volání předána kontextu a je zodpovědností za správu zpětného volání. Obslužná rutina se nesmí vrátit a očekává se, že rozšíří výjimku (například vyvolá nativní výjimku) do nativního prostředí nebo rychle selže.

Metody rozšíření

GetMethodInfo(Delegate)

Získá objekt, který představuje metodu reprezentovanou zadaným delegátem.

Platí pro