Compartilhar via


Método ICorProfilerInfo3::GetThreadStaticAddress2

Obtém o endereço do campo estático de thread especificado que está no escopo do domínio do aplicativo e thread especificados.

Sintaxe

HRESULT GetThreadStaticAddress2(  
                [in] ClassID classId,  
                [in] mdFieldDef fieldToken,  
                [in] AppDomainID appDomainId,  
                [in] ThreadID threadId,  
                [out] void **ppAddress);  

Parâmetros

classId
[in] A ID da classe que contém o campo estático de thread solicitado.

fieldToken
[in] O token de metadados para o campo estático de thread solicitado.

appDomainId
[in] A ID do site do domínio do aplicativo.

threadId
[in] A ID do thread que é o escopo do campo estático solicitado.

ppAddress
[out] Um ponteiro para o endereço do campo estático que está dentro do thread especificado.

Comentários

O método GetThreadStaticAddress2 pode retornar um desses procedimentos:

  • Um CORPROF_E_DATAINCOMPLETE HRESULT se o campo estático fornecido não tiver sido atribuído a um endereço no contexto especificado.

  • Os endereços de objetos que podem estar no heap de coleta de lixo. Esses endereços podem se tornar inválidos após a coleta de lixo, portanto, após a coleta de lixo, os criadores de perfil não devem assumir que são válidos.

Antes que o construtor de classe de uma classe seja concluído, GetThreadStaticAddress2 retornará CORPROF_E_DATAINCOMPLETE para todos os campos estáticos, embora alguns dos campos estáticos já possam ser inicializados e possam estar criando objetos de coleta de lixo.

O método ICorProfilerInfo2::GetThreadStaticAddress é semelhante ao método GetThreadStaticAddress2, mas não aceita um argumento de domínio do aplicativo.

Requisitos

Plataformas: confira Requisitos do sistema.

Cabeçalho: CorProf.idl, CorProf.h

Biblioteca: CorGuids.lib

Versões do .NET Framework: disponíveis desde 4

Confira também