Método ICorProfilerInfo2::GetFunctionFromTokenAndTypeArgs
Obtém o FunctionID de uma função usando o token de metadados especificado, que contém a classe, e ClassID valores de quaisquer argumentos de tipo.
HRESULT GetFunctionFromTokenAndTypeArgs(
[in] ModuleID moduleID,
[in] mdMethodDef funcDef,
[in] ClassID classId,
[in] ULONG32 cTypeArgs,
[in, size_is(cTypeArgs)] ClassID typeArgs[],
[out] FunctionID* pFunctionID);
Parâmetros
moduleID
[in] A ID do módulo no qual reside a função.funcDef
[in] An mdMethodDef token de metadados que faz referência a função.classId
[in] A ID da classe da função.cTypeArgs
[in] O número de parâmetros para a função determinada. Esse valor deve ser zero para funções não-genéricas.typeArgs
[in] Uma matriz de ClassID valores, cada um deles é um argumento da função. O valor de typeArgs pode ser nulo se cTypeArgs é definido como zero.pFunctionID
[out] Um ponteiro para o FunctionID da função especificada.
Comentários
Chamando o GetFunctionFromTokenAndTypeArgs método com um mdMethodRef metadados, em vez de um mdMethodDef token de metadados pode gerar resultados imprevisíveis. Os chamadores devem resolver o mdMethodRef para um mdMethodDef Quando passando para ele.
Se a função não estiver já carregada, chamada GetFunctionFromTokenAndTypeArgs fará com que o carregamento ocorra, que é uma operação perigosa em vários contextos. Por exemplo, chamar este método durante o carregamento de módulos ou tipos pode levar a um loop infinito conforme o tempo de execução tenta carregar circularmente coisas.
Em geral, use de GetFunctionFromTokenAndTypeArgs é desencorajado. Se geradores de perfis estiver interessados em eventos para uma função específica, eles devem armazenar o ModuleID e mdMethodDef dessa função e uso ICorProfilerInfo2::GetFunctionInfo2 para verificar se um determinado FunctionID é a função desejada.
Requisitos
Plataformas: See Requisitos de sistema do .NET framework.
Cabeçalho: CorProf.idl
Biblioteca: CorGuids.lib
.NET Framework Versions: 3.5 SP1, 3,5, 3.0 SP1, 3.0, 2.0 SP1, 2.0