Compartir a través de


ICorProfilerInfo2::GetClassFromTokenAndTypeArgs (Método)

Obtiene el valor de ClassID de un tipo utilizando el símbolo (token) de metadatos especificado y los valores de ClassID de los argumentos de tipo.

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

Parámetros

  • moduleID
    [in] Identificador del módulo donde reside el tipo.

  • typeDef
    [in] Token de metadatos mdTypeDef que hace referencia al tipo.

  • cTypeArgs
    [in] Número de parámetros de tipo para el tipo dado. Este valor debe ser cero para los tipos no genéricos.

  • typeArgs
    [in] Matriz de valores ClassID, cada uno de los cuales es un argumento del tipo. El valor de typeArgs puede ser Null si cTypeArgs se establece en cero.

  • pClassID
    [out] Puntero al valor ClassID del tipo especificado.

Comentarios

Llamar al método GetClassFromTokenAndTypeArgs con un símbolo (token) de metadatos mdTypeRef en lugar de mdTypeDef puede tener consecuencias imprevisibles; los llamadores deberían resolver mdTypeRef como mdTypeDef al pasarlo.

Si el tipo no está cargado todavía, al llamar a GetClassFromTokenAndTypeArgs se desencadena la carga, una operación peligrosa en muchos contextos. Por ejemplo, al llamar a este método durante la carga de módulos u otros tipos, se podría producir un bucle infinito mientras el motor en tiempo de ejecución intenta la carga circular.

En general, se desaconseja el uso de GetClassFromTokenAndTypeArgs. Si los generadores de perfiles están interesados en los eventos de un determinado tipo, deberían almacenar los valores de ModuleID y mdTypeDef de ese tipo y utilizar ICorProfilerInfo2::GetClassIDInfo2 para comprobar si un valor ClassID determinado corresponde al tipo deseado.

Requisitos

Plataformas: vea Requisitos de sistema de .NET Framework.

Encabezado: CorProf.idl, CorProf.h

Biblioteca: CorGuids.lib

Versiones de .NET Framework: 4, 3.5 SP1, 3.5, 3.0 SP1, 3.0, 2.0 SP1, 2.0

Vea también

Referencia

ICorProfilerInfo (Interfaz)

ICorProfilerInfo2 (Interfaz)