Udostępnij za pośrednictwem


ICLRMetaHost::RequestRuntimeLoadedNotification — Metoda

Udostępnia funkcję wywołania zwrotnego, która ma być wywoływana, gdy wersja środowiska uruchomieniowego języka wspólnego (CLR) jest najpierw ładowana, ale nie została jeszcze uruchomiona. Ta metoda zastępuje funkcję LockClrVersion .

Składnia

HRESULT RequestRuntimeLoadedNotification (  
    [in] RuntimeLoadedCallbackFnPtr pCallbackFunction);  

Parametry

pCallbackFunction
[w] Funkcja wywołania zwrotnego wywoływana po załadowaniu nowego środowiska uruchomieniowego.

Wartość zwracana

Ta metoda zwraca następujące określone elementy HRESULTs, a także błędy HRESULT wskazujące niepowodzenie metody.

HRESULT Opis
S_OK Metoda została ukończona pomyślnie.
E_POINTER pCallbackFunction ma wartość null.

Uwagi

Wywołanie zwrotne działa w następujący sposób:

  • Wywołanie zwrotne jest wywoływane tylko wtedy, gdy środowisko uruchomieniowe jest ładowane po raz pierwszy.

  • Wywołanie zwrotne nie jest wywoływane dla ponownych obciążeń tego samego środowiska uruchomieniowego.

  • W przypadku obciążeń środowiska uruchomieniowego, które nie są reentrant, wywołania funkcji wywołania zwrotnego są serializowane.

Funkcja wywołania zwrotnego ma następujący prototyp:

typedef void (__stdcall *RuntimeLoadedCallbackFnPtr)(  
                     ICLRRuntimeInfo *pRuntimeInfo,  
                     CallbackThreadSetFnPtr pfnCallbackThreadSet,  
                     CallbackThreadUnsetFnPtr pfnCallbackThreadUnset);  

Prototypy funkcji wywołania zwrotnego są następujące:

  • pfnCallbackThreadSet:

    typedef HRESULT (__stdcall *CallbackThreadSetFnPtr)();  
    
  • pfnCallbackThreadUnset:

    typedef HRESULT (__stdcall *CallbackThreadUnsetFnPtr)();  
    

Jeśli host zamierza załadować lub spowodować załadowanie innego środowiska uruchomieniowego w sposób ponowny, pfnCallbackThreadSet należy użyć parametrów i pfnCallbackThreadUnset podanych w funkcji wywołania zwrotnego w następujący sposób:

  • pfnCallbackThreadSet musi być wywoływana przez wątek, który może spowodować obciążenie środowiska uruchomieniowego przed podjęciem takiej próby załadowania.

  • pfnCallbackThreadUnset musi być wywoływana, gdy wątek nie spowoduje już takiego obciążenia środowiska uruchomieniowego (i przed powrotem z początkowego wywołania zwrotnego).

  • pfnCallbackThreadSet i pfnCallbackThreadUnset są nieprzyzwoicie.

Uwaga

Aplikacje hosta nie mogą wywoływać pfnCallbackThreadSet i pfnCallbackThreadUnset poza zakresem parametru pCallbackFunction .

Wymagania

Platformy: Zobacz Wymagania systemowe.

Nagłówka: MetaHost.h

Biblioteki: Uwzględnione jako zasób w MSCorEE.dll

wersje .NET Framework: dostępne od 4

Zobacz też