ICLRMetaHost::RequestRuntimeLoadedNotification-Methode
Stellt eine Rückruffunktion bereit, die garantiert aufgerufen wird, wenn eine CLR-Version (Common Language Runtime) zuerst geladen, aber noch nicht gestartet wird. Diese Methode ersetzt die LockClrVersion-Funktion.
HRESULT RequestRuntimeLoadedNotification (
[in] RuntimeLoadedCallbackFnPtr pCallbackFunction);
Parameter
- pCallbackFunction
[in] Die Rückruffunktion, die aufgerufen wird, wenn eine neue Laufzeit geladen wurde.
Rückgabewert
Diese Methode gibt die folgenden spezifischen HRESULTs sowie HRESULT-Fehler für Methodenfehler zurück.
HRESULT |
Beschreibungen |
---|---|
S_OK |
Die Methode wurde erfolgreich abgeschlossen. |
E_POINTER |
pCallbackFunction ist NULL. |
Hinweise
Der Rückruf wird wie folgt ausgeführt:
Der Rückruf wird nur aufgerufen, wenn eine Laufzeit zum ersten Mal geladen wird.
Der Rückruf wird nicht für wiedereintretendes Laden der gleichen Laufzeit aufgerufen.
Für nicht wiedereintretendes Laden der Laufzeit werden Aufrufe der Rückruffunktion serialisiert.
Die Rückruffunktion verfügt über den folgenden Prototyp:
typedef void (__stdcall *RuntimeLoadedCallbackFnPtr)(
ICLRRuntimeInfo *pRuntimeInfo,
CallbackThreadSetFnPtr pfnCallbackThreadSet,
CallbackThreadUnsetFnPtr pfnCallbackThreadUnset);
Die Rückruffunktionsprototypen lauten wie folgt:
pfnCallbackThreadSet:
typedef HRESULT (__stdcall *CallbackThreadSetFnPtr)();
pfnCallbackThreadUnset:
typedef HRESULT (__stdcall *CallbackThreadUnsetFnPtr)();
Wenn der Host beabsichtigt, eine Laufzeit wiedereintretend zu laden oder das wiedereintretende Laden einer anderen Laufzeit zu verursachen, müssen der pfnCallbackThreadSet-Parameter und der pfnCallbackThreadUnset-Parameter, die in der Rückruffunktion bereitgestellt werden, auf folgende Weise verwendet werden:
pfnCallbackThreadSet muss von dem Thread aufgerufen werden, der das Laden der Laufzeit verursachen kann, bevor versucht wird, die Laufzeit zu laden.
pfnCallbackThreadUnset muss aufgerufen werden, wenn der Thread nicht mehr das Laden der Laufzeit verursacht (und vor dem Beenden des ursprünglichen Rückrufs).
Sowohl pfnCallbackThreadSet als auch pfnCallbackThreadUnset sind nicht wiedereintretend.
Hinweis |
---|
Hostanwendungen dürfen pfnCallbackThreadSet und pfnCallbackThreadUnset nicht außerhalb des Gültigkeitsbereichs des pCallbackFunction-Parameters aufrufen. |
Anforderungen
Plattformen: siehe Systemanforderungen für .NET Framework.
Header: MetaHost.h
Bibliothek: als Ressource in MSCorEE.dll enthalten
.NET Framework-Versionen: 4