다음을 통해 공유


ICorProfilerInfo 인터페이스

코드 프로파일러가 이벤트 모니터링 및 요청 정보를 제어하기 위해 CLR(공용 언어 런타임)과 통신할 때 사용하는 메서드를 제공합니다.

참고참고

ICorProfilerInfo 인터페이스의 각 메서드는 성공 또는 실패를 나타내는 HRESULT를 반환합니다.가능한 반환 코드의 목록은 CorError.h를 참조하십시오.

메서드

메서드

설명

ICorProfilerInfo::BeginInprocDebugging 메서드

in-process 디버깅 지원을 초기화합니다. 이 메서드는 .NET Framework 버전 2.0에서 사용되지 않습니다.

ICorProfilerInfo::EndInprocDebugging 메서드

in-process 디버깅 세션을 종료합니다. 이 메서드는 .NET Framework 버전 2.0에서 사용되지 않습니다.

ICorProfilerInfo::ForceGC 메서드

가비지 수집이 런타임 내에서 실행되도록 지정합니다.

ICorProfilerInfo::GetAppDomainInfo 메서드

지정한 응용 프로그램 도메인에 대한 정보를 가져옵니다.

ICorProfilerInfo::GetAssemblyInfo 메서드

지정된 어셈블리에 대한 정보를 가져옵니다.

ICorProfilerInfo::GetClassFromObject 메서드

개체의 ClassID를 가져옵니다.

개체는 ObjectID로 지정됩니다.

ICorProfilerInfo::GetClassFromToken 메서드

지정된 메타데이터 토큰을 사용하여 클래스의 ID를 가져옵니다. 이 메서드는 .NET Framework 버전 2.0에서 사용되지 않습니다. ICorProfilerInfo2::GetClassFromTokenAndTypeArgs 메서드를 대신 사용하십시오.

ICorProfilerInfo::GetClassIDInfo 메서드

지정된 클래스의 부모 모듈과 메타데이터 토큰을 가져옵니다.

ICorProfilerInfo::GetCodeInfo 메서드

지정된 함수 ID와 연결된 네이티브 코드의 익스텐트를 가져옵니다. 이 메서드는 사용되지 않습니다. ICorProfilerInfo2::GetCodeInfo2 메서드를 대신 사용합니다.

ICorProfilerInfo::GetCurrentThreadID 메서드

현재 스레드가 관리되는 스레드인 경우 해당 스레드의 ID를 가져옵니다.

ICorProfilerInfo::GetEventMask 메서드

프로파일러에서 CLR로부터 이벤트 알림을 받으려는 현재 이벤트 범주를 가져옵니다.

ICorProfilerInfo::GetFunctionFromIP 메서드

관리 코드의 명령 포인터를 FunctionID에 매핑합니다.

ICorProfilerInfo::GetFunctionFromToken 메서드

함수의 ID를 가져옵니다. 이 메서드는 .NET Framework 버전 2.0에서 사용되지 않습니다. ICorProfilerInfo2::GetFunctionFromTokenAndTypeArgs를 대신 사용하십시오.

ICorProfilerInfo::GetFunctionInfo 메서드

지정된 함수의 부모 클래스와 메타데이터 토큰을 가져옵니다.

ICorProfilerInfo::GetHandleFromThread 메서드

스레드의 ID를 Win32 스레드 핸들에 매핑합니다.

ICorProfilerInfo::GetILFunctionBody 메서드

MSIL(Microsoft Intermediate Language) 코드의 메서드 본문을 해당 헤더부터 시작해서 가져옵니다.

ICorProfilerInfo::GetILFunctionBodyAllocator 메서드

MSIL 코드에서 메서드 본문을 바꾸는 데 사용할 메모리를 할당하기 위한 메서드를 제공하는 인터페이스를 가져옵니다.

ICorProfilerInfo::GetILToNativeMapping 메서드

지정된 함수에 들어 있는 코드에 대해 MSIL 오프셋에서 네이티브 오프셋으로의 매핑을 가져옵니다.

ICorProfilerInfo::GetInprocInspectionInterface 메서드

ICorDebugProcess 인터페이스를 쿼리할 수 있는 개체를 가져옵니다. 이 메서드는 .NET Framework 버전 2.0에서 사용되지 않습니다.

ICorProfilerInfo::GetInprocInspectionIThisThread 메서드

ICorDebugThread 인터페이스를 쿼리할 수 있는 개체를 가져옵니다. 이 메서드는 .NET Framework 버전 2.0에서 사용되지 않습니다.

ICorProfilerInfo::GetModuleInfo 메서드

모듈 ID, 모듈의 파일 이름 및 모듈의 부모 어셈블리 ID를 제공합니다.

ICorProfilerInfo::GetModuleMetaData 메서드

지정한 모듈에 매핑된 메타데이터 인터페이스 인스턴스를 가져옵니다.

ICorProfilerInfo::GetObjectSize 메서드

지정된 개체의 크기를 가져옵니다.

ICorProfilerInfo::GetThreadContext 메서드

지정된 스레드에 현재 연결되어 있는 컨텍스트 ID를 가져옵니다.

ICorProfilerInfo::GetThreadInfo 메서드

지정한 스레드의 현재 Win32 스레드 ID를 가져옵니다.

ICorProfilerInfo::GetTokenAndMetadataFromFunction 메서드

지정된 함수의 토큰에 대해 사용할 수 있는 메타데이터 토큰과 메타데이터 인터페이스 인스턴스를 가져옵니다.

ICorProfilerInfo::IsArrayClass 메서드

지정된 클래스가 배열 클래스인지 여부를 확인합니다.

ICorProfilerInfo::SetEnterLeaveFunctionHooks 메서드

관리되는 함수의 "enter", "leave" 및 "tailcall" 후크에 대해 호출할 프로파일러 구현 함수를 지정합니다.

ICorProfilerInfo::SetEventMask 메서드

프로파일러에서 CLR로부터 알림을 받으려는 이벤트 형식을 지정하는 값을 설정합니다.

ICorProfilerInfo::SetFunctionIDMapper 메서드

FunctionID 값을 프로파일러의 함수 시작/종료 후크에 전달된 대체 값으로 매핑하기 위해 호출할 프로파일러 구현 함수를 지정합니다.

ICorProfilerInfo::SetFunctionReJIT 메서드

구현되지 않았습니다. 사용하지 마십시오.

ICorProfilerInfo::SetILFunctionBody 메서드

지정된 모듈에 있는 지정된 함수의 본문을 바꿉니다.

ICorProfilerInfo::SetILInstrumentedCodeMap 메서드

지정된 함수의 원래 MSIL에 대한 오프셋이 프로파일러에서 수정한 MSIL의 새 오프셋에 매핑되는 방식을 지정합니다.

설명

프로파일러에서는 CLR과 통신할 때 ICorProfilerInfo 인터페이스의 메서드를 호출하여 이벤트 모니터링을 제어하고 정보를 요청합니다.

ICorProfilerInfo 인터페이스의 메서드는 CLR에서 자유 스레드 모델을 사용하여 구현됩니다. 각 메서드는 성공 또는 실패를 나타내는 HRESULT를 반환합니다. 가능한 반환 코드의 목록은 CorError.h를 참조하십시오.

CLR에서는 초기화 중 프로파일러에 구현된 ICorProfilerCallback::Initialize를 통해 각 코드 프로파일러에 ICorProfilerInfo 인터페이스를 전달합니다. 그런 다음 코드 프로파일러에서는 CLR의 제어에 따라 실행되는 관리 코드에 대한 정보를 얻기 위해 ICorProfilerInfo 인터페이스의 메서드를 호출할 수 있습니다.

요구 사항

플랫폼: .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

참고 항목

참조

ICorProfilerInfo2 인터페이스

기타 리소스

프로파일링 인터페이스