방법: 데이터 중단점 설정(네이티브 전용)
이 항목은 다음 언어에 적용됩니다.
Edition |
Visual Basic |
C# |
F# |
C++ |
Web Developer |
---|---|---|---|---|---|
Express |
네이티브 전용 |
||||
Pro, Premium 및 Ultimate |
네이티브 전용 |
데이터 중단점을 사용하면 특정 메모리 위치에 저장된 값이 기록될 때 실행을 중단할 수 있습니다. 값을 쓰지 않고 읽을 때는 실행이 중단되지 않습니다.
디버깅 중이 아닌 프로세스에서 해당 메모리 위치에 쓰는 경우나 둘 이상의 프로세스에서 해당 메모리 위치를 공유하는 경우에는 데이터 중단점이 작동하지 않습니다.
커널 내에서 메모리 위치가 업데이트되는 경우에도 데이터 중단점이 작동하지 않습니다. 예를 들어 32비트 Windows ReadFile 함수에 메모리가 전달된 경우 커널 모드에서 메모리가 업데이트되므로 메모리에 쓸 때 디버거에서 실행이 중단되지 않습니다.
데이터 중단점을 설정하려면 디버거가 중단 모드여야 합니다.
변수의 주소는 디버깅 세션마다 달라집니다. 이러한 이유로 데이터 중단점은 각 디버깅 세션이 끝날 때 자동으로 해제됩니다.
데이터 중단점을 지역 변수에 설정한 경우에는 함수가 종료되어도 데이터 중단점이 설정된 상태로 유지됩니다. 그러나 설정된 메모리 주소의 의미는 달라집니다. 따라서 이러한 중단점의 결과는 예측할 수 없습니다. 지역 변수에 데이터 중단점을 설정한 경우에는 함수가 종료되기 전에 중단점을 제거하거나 해제하는 것이 좋습니다.
Visual Studio에서는 솔루션당 최대 4개의 데이터 중단점을 지원합니다.
참고
표시되는 대화 상자와 메뉴 명령은 실제 설정이나 버전에 따라 도움말에서 설명하는 것과 다를 수 있습니다. 설정을 변경하려면 도구 메뉴에서 설정 가져오기 및 내보내기를 선택합니다. 자세한 내용은 설정에 대한 작업을 참조하십시오.
메모리 변경 중단점을 설정하려면
디버그 메뉴에서 새 중단점을 선택하고 새 데이터 중단점을 클릭합니다.
또는
중단점 창 메뉴에서 새로 만들기를 클릭하고 새 데이터 중단점을 선택합니다.
새 중단점 대화 상자가 나타납니다.
주소 상자에 메모리 주소나 메모리 주소를 계산하는 식을 입력합니다.
예를 들어, avar 변수의 내용이 바뀔 때 실행을 중단하려면 &avar을 입력하여 합니다.
바이트 계산 상자에 디버거에서 조사할 바이트 수를 입력합니다.
예를 들어, 4를 입력하면 디버거에서 &myFunction부터 4바이트를 조사하고 이러한 바이트의 값이 변경되면 실행을 중단합니다.
확인을 클릭합니다.