Metodo ICLRMetaHost::RequestRuntimeLoadedNotification
Fornisce una funzione di callback garantita quando viene caricata una versione CLR (Common Language Runtime), ma non ancora avviata. Questo metodo sostituisce la funzione LockClrVersion .
Sintassi
HRESULT RequestRuntimeLoadedNotification (
[in] RuntimeLoadedCallbackFnPtr pCallbackFunction);
Parametri
pCallbackFunction
[in] Funzione di callback richiamata quando è stato caricato un nuovo runtime.
Valore restituito
Questo metodo restituisce gli specifici HRESULT seguenti, nonché gli errori di HRESULT che indicano la mancata riuscita del metodo.
HRESULT | Descrizione |
---|---|
S_OK | Metodo completato correttamente. |
E_POINTER | pCallbackFunction è null. |
Commenti
Il callback funziona nel modo seguente:
Il callback viene richiamato solo quando viene caricato un runtime per la prima volta.
Il callback non viene richiamato per carichi reentrant dello stesso runtime.
Per i carichi di runtime non reentrant, le chiamate alla funzione di callback vengono serializzate.
La funzione callback ha il prototipo seguente:
typedef void (__stdcall *RuntimeLoadedCallbackFnPtr)(
ICLRRuntimeInfo *pRuntimeInfo,
CallbackThreadSetFnPtr pfnCallbackThreadSet,
CallbackThreadUnsetFnPtr pfnCallbackThreadUnset);
I prototipi di funzione callback sono i seguenti:
pfnCallbackThreadSet
:typedef HRESULT (__stdcall *CallbackThreadSetFnPtr)();
pfnCallbackThreadUnset
:typedef HRESULT (__stdcall *CallbackThreadUnsetFnPtr)();
Se l'host intende caricare o causare il caricamento di un altro runtime in modo reentrant, i pfnCallbackThreadSet
parametri e pfnCallbackThreadUnset
forniti nella funzione di callback devono essere usati nel modo seguente:
pfnCallbackThreadSet
deve essere chiamato dal thread che potrebbe causare un carico di runtime prima che venga tentato un carico di questo tipo.pfnCallbackThreadUnset
deve essere chiamato quando il thread non causerà più tale carico di runtime (e prima di restituire dal callback iniziale).pfnCallbackThreadSet
epfnCallbackThreadUnset
sono entrambi non reentrant.
Nota
Le applicazioni host non devono chiamare pfnCallbackThreadSet
e pfnCallbackThreadUnset
uscire dall'ambito del pCallbackFunction
parametro.
Requisiti
Piattaforme: vedere Requisiti di sistema di .NET Framework.
Intestazione: MetaHost.h
Libreria: Incluso come risorsa in MSCorEE.dll
Versioni di .NET Framework: Disponibile da 4