Método ICorProfilerInfo2::GetClassFromTokenAndTypeArgs

Obtém o ClassID de um tipo usando o token de metadados especificado e os valores ClassID de quaisquer argumentos de tipo.

Sintaxe

HRESULT GetClassFromTokenAndTypeArgs(  
    [in] ModuleID moduleID,  
    [in] mdTypeDef typeDef,  
    [in] ULONG32 cTypeArgs,  
    [in, size_is(cTypeArgs)] ClassID typeArgs[],  
    [out] ClassID* pClassID);  

Parâmetros

moduleID
[in] A ID do módulo no qual o tipo reside.

typeDef
[in] Um token de metadados mdTypeDef que faz referência ao tipo.

cTypeArgs
[in] O número de parâmetros de tipo para o tipo fornecido. Esse valor deve ser zero para tipos não genéricos.

typeArgs
[in] Uma matriz de valores ClassID, cada um deles é um argumento do tipo. O valor de typeArgs pode ser NULL se cTypeArgs for definido como zero.

pClassID
[out] Um ponteiro para o ClassID do tipo especificado.

Comentários

Chamar o método GetClassFromTokenAndTypeArgs com um token mdTypeRef em vez de um token de metadados mdTypeDef pode ter resultados imprevisíveis. Os chamadores devem resolver o método mdTypeRef para um mdTypeDef ao passá-lo.

Se o tipo ainda não estiver carregado, chamar GetClassFromTokenAndTypeArgs disparará o carregamento e essa é uma operação perigosa em muitos contextos. Por exemplo, chamar esse método durante o carregamento de módulos ou outros tipos pode levar a um loop infinito à medida que o runtime tenta carregar circularmente as coisas.

Em geral, o uso de GetClassFromTokenAndTypeArgs não é aconselhado. Se os criadores de perfil estiverem interessados em eventos para um tipo específico, eles deverão armazenar o ModuleID e mdTypeDef desse tipo e usar ICorProfilerInfo2::GetClassIDInfo2 para verificar se um determinado ClassID é o da função desejada.

Requisitos

Plataformas: confira Requisitos do sistema.

Cabeçalho: CorProf.idl, CorProf.h

Biblioteca: CorGuids.lib

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

Confira também