ICorProfilerInfo2::GetFunctionFromTokenAndTypeArgs 메서드
지정된 메타데이터 토큰, 포함 클래스 및 형식 인수의 ClassID 값을 사용하여 함수의 FunctionID를 가져옵니다.
HRESULT GetFunctionFromTokenAndTypeArgs(
[in] ModuleID moduleID,
[in] mdMethodDef funcDef,
[in] ClassID classId,
[in] ULONG32 cTypeArgs,
[in, size_is(cTypeArgs)] ClassID typeArgs[],
[out] FunctionID* pFunctionID);
매개 변수
moduleID
[in] 함수가 있는 모듈의 ID입니다.funcDef
[in] 함수를 참조하는 mdMethodDef 메타데이터 토큰입니다.classId
[in] 클래스가 들어 있는 함수의 ID입니다.cTypeArgs
[in] 지정된 함수에 대한 형식 매개 변수의 수입니다. 제네릭이 아닌 함수의 경우 이 값은 0이어야 합니다.typeArgs
[in] 함수의 인수인 각 ClassID 값의 배열입니다. cTypeArgs가 0으로 설정되어 있으면 typeArgs 값은 NULL일 수 있습니다.pFunctionID
[out] 지정된 함수의 FunctionID에 대한 포인터입니다.
설명
mdMethodDef 메타데이터 토큰 대신 mdMethodRef 메타데이터와 함께 GetFunctionFromTokenAndTypeArgs 메서드를 호출하면 예기치 않은 결과가 발생할 수 있습니다. 호출자에서는 전달할 때 mdMethodRef를 mdMethodDef로 확인해야 합니다.
함수가 아직 로드되지 않은 경우 GetFunctionFromTokenAndTypeArgs를 호출하면 로딩이 발생합니다. 이는 많은 컨텍스트에서 위험한 작업입니다. 예를 들어, 모듈이나 형식을 로드하는 동안 이 메서드를 호출하면 런타임에 순환 로드를 시도할 때 무한 루프가 발생할 수 있습니다.
일반적으로 GetFunctionFromTokenAndTypeArgs는 사용하지 않는 것이 좋습니다. 프로파일러에서 특정 함수의 이벤트를 원하는 경우 해당 함수의 ModuleID 및 mdMethodDef를 저장하고 ICorProfilerInfo2::GetFunctionInfo2를 사용하여 지정된 FunctionID가 원하는 함수인지 확인해야 합니다.
요구 사항
플랫폼: .NET Framework 시스템 요구 사항 참조
헤더: CorProf.idl, CorProf.h
라이브러리: CorGuids.lib
.NET Framework 버전: 4, 3.5 SP1, 3.5, 3.0 SP1, 3.0, 2.0 SP1, 2.0