2012-05-24 2 views
0

VS2010에서 디버깅하는 동안 프로그램은 자연스럽게 다른 것보다 느리게 실행됩니다.디버깅 중에 ListBox를 채울 때 Visual Studio 2010이 매우 느림

그러나 최근에 ListBox의 값을 업데이트하면 프로그램이 느리게 느리게 실행됩니다. (다른 컨트롤도 영향을받을 수 있습니다. 확실하지는 않지만 ListBox는 확실합니다).

ListBox에 100 개의 요소를 추가하는 것처럼 디버거 외부에서 아주 짧은 시간 안에 일어나는 작업은 VS 내부에서 3 ~ 5 분 정도 걸릴 수 있습니다.

분명히 정상적인 동작이 아닙니다.

언제 시작되었지만 항상 발생하지 않았는지 확실하지 않습니다. 몇 달 전에 시작되었습니다. 어쩌면 서비스 팩을 설치했을까요? 나는 잘 모르겠다.

프로세스를 보면 msvsmon.exe가 CPU를 통해 씹고 있습니다.

어떤 아이디어가 있다면 어딘가에 어떤 변화가 생겼는지 생각해보십시오. 8,000 개의 요소를 포함하는 ListBox로 디버깅하려고하는데 이는 완전히 불가능합니다.

윈도우 7 64는 4GB의 RAM, VS2010 - SP1

+1

Q : 어떤 언어입니까? C#? VB.Net? 다른? Q : Winforms는 어떤 대상입니까? WPF? 다른? Q : MSVS 디버거에서 실행되지 않을 때 앱이 어떻게 작동합니까? Q : "릴리스"("디버그"대신) 용으로 컴파일하고 MSVS 외부에서 실행하면 앱이 어떻게 작동합니까? Q : 어떻게 목록 상자를 채우고 있습니까? – paulsm4

+0

응용 프로그램이 느리게 실행될 때 수행중인 컴퓨터는 무엇입니까? –

+2

출력 창을보십시오. "First chance exception"메시지로 가득 차 있습니까? 예외를 삼가하지 마십시오. –

답변

3

네, 많은 시스템을 볼 수 있습니다.출력 창에 InvalidCastExceptions가 발생했습니다.

그 원인으로 속도가 느려지므로 디버거가 예외를 처리 할 때 많은 작업을 수행합니다. 특히 프로젝트의 플랫폼 대상이 AnyCPU이기 때문에 필요한 원격 디버거가 필요합니다. 알림 창을 출력 창에 추가하는 것은 저렴하지 않습니다.

이 문제는 무시할 수 없으며 단지 디버거 아티팩트가 아닙니다. Debug + Exceptions에서 CLR Exceptions에 대해 Thrown 상자를 선택하십시오. 예외가 발생하면 디버거가 중지됩니다. 해당 코드를 수정해야합니다.

+0

아, 문제를 발견했습니다. 내 'Equals' 오버로드에서 개체를 내 엔터티로 캐스팅하고'InvalidCastException'을 잡아서 false를 반환하려고합니다. 이후로'as '단어를 사용하여 다시 작성하고 객체가 null인지 확인한 다음 false를 반환합니다. – Ozzah

+2

당신은 정말로 Equals 메서드에서 try/catch를 작성하지 않았습니다. Tsk, tsk. –

1

이 문제는 방법 VS2010가 중단 점을 처리 할 수 ​​있습니다. 심볼을 검색 당신이 중 하나이 경우 특히, 종종 디버그의 시작에 매우 느립니다

  • :

    두 흥미로운 노트 :이 링크를 봐 원격 기호 옵션을 으로 설정하고 MS 서버에서 기호가없는 다양한 DLL에 '무시'를 설정하지 않았습니다.

...

  • 64 비트 프로그램을 디버깅 할 때 예, 대한 Msvsmon.exe가 사용됩니다. Visual Studio는 완전히 32 비트이므로 리모트 디버거는 을 나누기 위해 필요합니다. ... .pdb 파일을 찾아서로드하는 것이 좋습니다. 또는 실수로 혼합 모드 디버깅 옵션이 켜져 있으므로 디버거에서 모든 관리되지 않는 DLL 로드 및 기호를 찾을 수도 있습니다. 이것들은 단지 추측 일뿐입니다. slownes의
+0

추신 : 마지막 인용문은 Hans Passant에서 인용 한 것입니다. 누가이 질문에 답변하고 있습니까? – paulsm4

+0

코드에 중단 점이 없습니다. – Ozzah

0

또 하나의 원인 - 각 중단 점에 명중의 조건으로 조건부 중단 점을 평가해야합니다. 긴 루프 내부의 조건에 "거짓"이있는 중단 점을 사용하면 디버깅 속도가 크게 느려집니다.

관련 문제