Partilhar via


Método de ICLRMetaHost::RequestRuntimeLoadedNotification

Fornece uma função de retorno de chamada que é garantida para ser chamado quando uma versão de runtime (CLR) de idioma comum é carregada pela primeira vez, mas ainda não foi iniciada. Este método substitui a LockClrVersion função.

HRESULT RequestRuntimeLoadedNotification (
    [in] RuntimeLoadedCallbackFnPtr pCallbackFunction);

Parâmetros

  • pCallbackFunction
    [in] A função de retorno de chamada é invocada quando um novo tempo de execução foi carregado.

Valor de retorno

Esse método retorna o seguintes HRESULTs específicos, bem como o HRESULT erros que indicam falha de método.

HRESULT

Descrição

S_OK

O método foi concluído com êxito.

E_POINTER

pCallbackFunctioné nulo.

Comentários

O retorno de chamada funciona da seguinte maneira:

  • O retorno de chamada é invocado somente quando um tempo de execução é carregado pela primeira vez.

  • O retorno de chamada não é invocado para cargas reentrantes do mesmo runtime.

  • Para cargas de tempo de execução não reentrante chamadas para a função de retorno de chamada são serializadas.

A função de retorno de chamada tem o seguinte protótipo:

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

Protótipos de função de retorno de chamada são os seguintes:

  • pfnCallbackThreadSet:

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

    typedef HRESULT (__stdcall *CallbackThreadUnsetFnPtr)();
    

Se o host pretende carregar ou fazer com que o outro tempo de execução a ser carregado de forma reentrante, o pfnCallbackThreadSet e pfnCallbackThreadUnset parâmetros que são fornecidos no retorno de chamada a função deve ser usada da seguinte maneira:

  • pfnCallbackThreadSetdeve ser chamado pelo thread que pode causar uma carga de runtime, antes de tal carga é tentada.

  • pfnCallbackThreadUnsetdeve ser chamado quando o thread não fará com que uma carga de tempo de execução (e antes de retornar do retorno de chamada inicial).

  • pfnCallbackThreadSete pfnCallbackThreadUnset são não-reentrante.

Observação

Aplicativos de host não devem chamar pfnCallbackThreadSet e pfnCallbackThreadUnset fora do escopo do pCallbackFunction parâmetro.

Requisitos

Plataformas: Consulte Requisitos de sistema do .NET Framework.

Cabeçalho: MetaHost.h

Biblioteca: Incluído como um recurso em mscoree

.NET Framework versões: 4

Consulte também

Referência

Interface de ICLRMetaHost

Outros recursos

Hospedagem (referência de API não gerenciada)