ICorProfilerInfo::GetILToNativeMapping 메서드
CIL(공용 중간 언어) 오프셋에서 지정된 함수에 포함된 코드의 네이티브 오프셋으로의 맵을 가져옵니다.
구문
HRESULT GetILToNativeMapping(
[in] FunctionID functionId,
[in] ULONG32 cMap,
[out] ULONG32 *pcMap,
[out, size_is(cMap), length_is(*pcMap)]
COR_DEBUG_IL_TO_NATIVE_MAP map[]);
매개 변수
functionId
[in] 코드를 포함하는 함수의 ID입니다.
cMap
[in] 배열의 최대 크기입니다 map
.
pcMap
[out] 사용 가능한 COR_DEBUG_IL_TO_NATIVE_MAP 구조체의 총 수입니다.
map
[out] 각각 오프셋을 지정하는 구조체의 배열 COR_DEBUG_IL_TO_NATIVE_MAP
입니다. GetILToNativeMapping
메서드가 반환되면 map
에 COR_DEBUG_IL_TO_NATIVE_MAP
구조체가 일부 또는 모두 포함됩니다.
설명
GetILToNativeMapping
메서드는 COR_DEBUG_IL_TO_NATIVE_MAP
구조체의 배열을 반환합니다. 특정 범위의 네이티브 명령이 코드의 특수 영역(예: 프롤로그)에 해당함을 전달하기 위해 배열의 항목에 대한 ilOffset
필드가 CorDebugIlToNativeMappingTypes 열거형의 값으로 설정될 수 있습니다.
GetILToNativeMapping
가 반환된 후 map
버퍼가 모든 COR_DEBUG_IL_TO_NATIVE_MAP
구조체를 포함하기에 충분히 큰지 확인해야 합니다. 이렇게 하려면 cMap
값을 pcMap
매개 변수의 값과 비교합니다. COR_DEBUG_IL_TO_NATIVE_MAP
구조체의 크기를 곱한 pcMap
값이 cMap
보다 크면 더 큰 map
버퍼를 할당하고 cMap
를 더 큰 새 크기로 업데이트한 다음 GetILToNativeMapping
를 다시 호출합니다.
또는 길이가 0인 map
버퍼로 GetILToNativeMapping
를 먼저 호출하여 올바른 버퍼 크기를 구합니다. 그런 다음 버퍼 크기를 pcMap
에 반환된 값으로 설정하고 GetILToNativeMapping
을 다시 호출합니다.
요구 사항
플랫폼:시스템 요구 사항을 참조하세요.
헤더: CorProf.idl, CorProf.h
라이브러리: CorGuids.lib
.NET Framework 버전: 2.0부터 사용 가능
참고 항목
.NET