ICorDebugStepper 인터페이스

디버거에서 수행하는 코드 실행 단계를 나타내며, 명령의 실행/완료를 구분하는 식별자로 사용되고, 단계를 취소하는 방법을 제공합니다.

메서드

메서드

설명

ICorDebugStepper::Deactivate 메서드

ICorDebugStepper에서 수신한 마지막 단계별 실행 명령이 취소되도록 합니다.

ICorDebugStepper::IsActive 메서드

ICorDebugStepper에서 현재 단계를 실행하고 있는지 여부를 나타내는 값을 가져옵니다.

ICorDebugStepper::SetInterceptMask 메서드

한 단계씩 실행할 코드의 형식을 지정하는 CorDebugIntercept 값을 설정합니다.

ICorDebugStepper::SetRangeIL 메서드

ICorDebugStepper::StepRange를 호출할 때 단계별로 실행할 메서드의 네이티브 코드에 대해 상대적인 인수 값을 전달할지 아니면 MSIL(Microsoft Intermediate Language) 코드에 대해 상대적인 인수 값을 전달할지를 나타내는 값을 설정합니다.

ICorDebugStepper::SetUnmappedStopMask 메서드

실행을 중지할 매핑되지 않은 코드의 형식을 지정하는 CorDebugUnmappedStop 값을 설정합니다.

ICorDebugStepper::Step 메서드

ICorDebugStepper가 포함 스레드를 한 단계씩 실행하고 선택적으로 스레드 내에서 호출된 함수도 한 단계씩 실행하도록 합니다.

ICorDebugStepper::StepOut 메서드

ICorDebugStepper가 포함 스레드를 한 단계씩 실행하고 현재 프레임에서 호출 프레임으로 제어권을 반환할 때 완료되도록 합니다.

ICorDebugStepper::StepRange 메서드

ICorDebugStepper가 포함 스레드를 한 단계씩 실행하고 지정된 범위 이후의 코드에 도달할 때 반환되도록 합니다.

설명

ICorDebugStepper 인터페이스는 다음과 같은 용도로 사용됩니다.

  • 단계별 실행 명령의 실행과 완료 사이에서 식별자 역할을 합니다.

  • 수행할 수 있는 모든 단계별 실행 작업을 캡슐화하는 중앙 인터페이스를 제공합니다.

  • 단계별 실행 작업을 중간에 취소할 수 있도록 합니다.

한 스레드에 두 개 이상의 스텝퍼가 있을 수 있습니다. 예를 들어 함수를 단계별로 실행하는 동안 중단점에 적중할 경우 사용자가 해당 함수 내에서 새로운 단계별 실행 작업을 시작할 수 있습니다. 이 상황을 처리하는 방법을 결정하는 것은 디버거의 역할입니다. 디버거에서는 원래 단계별 실행 작업을 취소하거나 두 가지 실행 작업을 중첩시킬 수 있습니다. ICorDebugStepper 인터페이스에서는 두 가지 방법 모두 가능합니다.

CLR(공용 언어 런타임)에서 크로스 스레드 마샬링된 호출을 실행하는 경우 스텝퍼가 스레드 간에 마이그레이션될 수 있습니다.

참고참고

이 인터페이스는 컴퓨터 간이나 프로세스 간에 원격으로 호출되는 것을 지원하지 않습니다.

요구 사항

플랫폼: .NET Framework 시스템 요구 사항 참조

헤더: CorDebug.idl, CorDebug.h

라이브러리: CorGuids.lib

.NET Framework 버전: 4, 3.5 SP1, 3.5, 3.0 SP1, 3.0, 2.0 SP1, 2.0, 1.1, 1.0

참고 항목

참조

ICorDebugStepper2 인터페이스

기타 리소스

디버깅 인터페이스