Visual Studio 2010 Ultimate 버전에는 IntelliTrace(지능형 추적)라는 새로운 기능이 Visual Studio에 도입되어 .NET 애플리케이션 디버깅 속도를 향상시켰습니다. 이 기능은 실행 프로세스 중에 미리 설정된 이벤트와 메서드를 추적하고 디버깅 실행 프로그램에 효과적으로 전달됩니다. , 이를 통해 실행 중에 프로그램의 상태와 다양한 정보를 신속하게 전송하여 개발자가 프로그램을 더 잘 디버깅하고 문제를 빠르게 찾을 수 있도록 도와줍니다. 실제로 Visual Studio 2010 이전에는 Microsoft Visual Stuido가 변수 모니터링, 스택 보기 등과 같은 디버깅 도구를 매우 잘 상속하고 단일 단계 디버깅을 위한 중단점 설정을 허용하는 데 도움이 되었습니다. 이 모든 것은 개발자가 다양한 실행 프로세스에서 프로그램의 상태를 이해하고 실제 논리에 따라 실행되고 있는지 미리 감지하는 데 매우 도움이 됩니다. 또한 중단점 이후의 프로그램 상태를 모니터링하여 문제를 찾을 수 있습니다. 문제는 중단점이 실행되기 전에 일부 논리적 오류가 발생할 수 있으며 이를 추적할 수 없다는 것입니다. 개발자는 현재 디버깅을 중지하고 중단점을 재설정한 후 디버깅을 시작해야 하며, 이 실험 프로세스는 중단점을 설정할 올바른 위치를 찾는 데 종종 많은 시간이 걸립니다. IntelliTrace는 일부 디버깅 정보와 프로그램 상태를 지능적으로 자동으로 추적하고 개발자에게 표시하므로 프로그래머가 프로그램의 실행 상태를 추적하고 모니터링하기 위해 적절한 중단점을 찾을 필요성이 줄어듭니다.
Visual Studio는 수집하는 정보의 콘텐츠 소스를 제어하는 두 가지 방법을 제공합니다. 하나는 지능형 추적 이벤트 및 디버깅 인터럽트와 관련된 데이터만 수집하는 IntelliTrace 이벤트이며, 다른 하나는 데이터를 수집하는 IntelliTrace 이벤트입니다. IntelliTrace 외에도 이벤트 외부 메서드 호출의 시작 및 종료에 대한 다양한 데이터입니다. Visual Studio 2010에서 IntelliTrace의 추적 옵션을 설정하는 방법을 살펴보겠습니다.
도구-->옵션-->IntelliTrace로 이동합니다. 기본적으로 활성화되어 있지만 이벤트 캡처 비용이 저렴하기 때문에 이벤트만 캡처합니다. 그러나 이러한 모든 통화 정보를 추적하기 시작하면 실제 값이 표시되기 시작합니다. 디버깅할 때마다 IntelliTrace가 팝업으로 표시됩니다. 동적 디버깅 중에 이 기록 디버깅 도구를 사용할 수 있습니다. 내가 거기 있고 중단점이 있지만 이 중단점을 백업하고 다시 디자인하고 싶다면 IntelliTrace를 사용하여 이 작업을 수행할 수 있습니다.
IntelliTrace를 사용하여 디버깅 프로세스를 캡처한 다른 사람들은 기록과 .dll 및 pdbs 파일을 보낼 수 있으며 귀하는 해당 프로세스를 재생할 수 있습니다. 프로세스가 데이터베이스에 들어갈 수도 있고(데이터베이스가 없음) 복사할 수 없는 방식으로 설정될 수도 있고, 접근할 수 없는 네트워크에 있을 수도 있지만, 재생할 수 있는 레코드와 .dll 및 pdbs 파일이 있으므로 걱정할 필요가 없습니다.
물론, 소스 코드를 가지고 있는 것이 더 좋습니다. 그러면 자신의 컴퓨터에서 디버깅하는 것처럼 코드를 볼 수 있기 때문입니다. 이는 귀하의 컴퓨터에서는 잘 작동하지만 다른 사람의 컴퓨터에서는 작동하지 않는 신비한 결함에 적합합니다. 멀티스레드 상황에도 아주 좋고, 애플리케이션을 진행하다 보면 소프트웨어 결함이 사라지다가 정상 속도로 실행하면 다시 소프트웨어 결함이 나타난다.
기본적으로 IntelliTrace는 IntelliTrace 관련 이벤트만 수집합니다. 이는 수집된 데이터를 작게 유지하고 성능에 미치는 영향을 최소화하기 위한 것입니다. 메서드 호출 시에도 데이터를 수집하도록 선택하면 임시로 수집된 데이터가 차지하는 공간이 늘어날 뿐만 아니라 성능에 미치는 영향도 더 커집니다. 수집되는 세부 정보는 다양하지만 두 방법 모두 공통 데이터를 수집합니다. 예를 들어, 수집 프로세스가 처음 시작될 때 항상 시스템 정보, 모듈 로드 및 언로드 이벤트, 스레드 시작 및 종료 시간 등을 수집합니다. 모듈 및 스레드 이벤트가 발생하면 모듈 및 스레드 디버깅 창 정보가 올바르게 업데이트될 수 있습니다. 또한 어떤 모드에서든 디버깅 중단점에서도 데이터가 수집되며, 수집된 기본 데이터 유형 및 개체는 디버깅 중에 검사 및 검토되며 해당 값이 변경될 수 있습니다.
일반적으로 IntelliTrace 디버거는 프로그램 개발자를 위해 맞춤 제작되었습니다. 고유한 기록 디버깅 기능을 통해 개발자에게 후회 추적 프로세스 제어 기능을 제공합니다. 예를 들어, 10분 전 프로그램 개발 중에 예외가 발생했다면 어떻게 해야 할까요? 예전에는 수동으로 Debug.Write 문을 호출해서 처리했다면 이제는 그럴 필요가 없습니다! 많은 개발 도구의 기록 디버깅 기능이 매우 유사하기 때문에 VS2010 공식 버전의 IntelliTrace를 통해 프로그래머는 프로그램의 현재 상태를 볼 수 있을 뿐만 아니라 특정 상황에서 생성된 이벤트를 확인하고 오류 지점을 격리할 수도 있습니다. 신청 내역. 따라서 히스토리 디버깅을 활성화한 후 VS2010 정식 버전에서는 프로그램이 저장되기 전 10분 이상으로 돌아가서 프로그램에서 예외 및 실패가 발생할 때 다양한 상황을 확인할 수 있습니다. 기본적으로 프로그램은 키 유형만 저장하므로 개발자는 모든 매개변수, 개체 및 전역 변수를 기록하도록 선택할 수 있습니다. 따라서 IntelliTrace는 프로그램 실행 중에 코드 예외, 파일 액세스, 실시간 디버깅 등과 같은 주요 이벤트를 적극적으로 표시합니다.