Бөлісу құралы:


Метод ICLRMetaHost::RequestRuntimeLoadedNotification

Предоставляет функцию обратного вызова, которая гарантированно будет вызываться при первой загрузке версии среды CLR, но еще не запущенной. Этот метод заменяет функцию LockClrVersion .

Синтаксис

HRESULT RequestRuntimeLoadedNotification (  
    [in] RuntimeLoadedCallbackFnPtr pCallbackFunction);  

Параметры

pCallbackFunction
[in] Функция обратного вызова, вызываемая при загрузке новой среды выполнения.

Возвращаемое значение

Этот метод возвращает следующие конкретные результаты HRESULT, а также ошибки HRESULT, которые указывают на сбой метода.

HRESULT Описание:
S_OK Метод завершился успешно.
E_POINTER Параметр pCallbackFunction имеет значение null.

Комментарии

Обратный вызов работает следующим образом:

  • Обратный вызов вызывается только при первой загрузке среды выполнения.

  • Обратный вызов не вызывается для повторных загрузок той же среды выполнения.

  • При неперемещающихся нагрузках среды выполнения вызовы функции обратного вызова сериализуются.

Функция обратного вызова имеет следующий прототип:

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

Ниже приведены прототипы функции обратного вызова.

  • pfnCallbackThreadSet:

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

    typedef HRESULT (__stdcall *CallbackThreadUnsetFnPtr)();  
    

Если узел намерен загрузить или вызвать повторную загрузку другой среды выполнения, параметры и pfnCallbackThreadUnset , pfnCallbackThreadSet предоставляемые в функции обратного вызова, должны использоваться следующим образом:

  • pfnCallbackThreadSet должен вызываться потоком, который может вызвать загрузку среды выполнения перед попыткой такой загрузки.

  • pfnCallbackThreadUnset должен вызываться, когда поток больше не будет вызывать такую загрузку среды выполнения (и перед возвратом из исходного обратного вызова).

  • pfnCallbackThreadSet и pfnCallbackThreadUnset не являются повторным вхондентом.

Примечание

Ведущее приложение не должно вызывать pfnCallbackThreadSet и pfnCallbackThreadUnset вне область pCallbackFunction параметра.

Требования

Платформы: см. раздел Требования к системе.

Заголовка: MetaHost.h

Библиотека: Включается в качестве ресурса в MSCorEE.dll

версии платформа .NET Framework: доступно с 4

См. также раздел