Visual Studio 2010과 함께 64 비트 Windows 7에서 32 비트 GLUT를 사용하고 있습니다.이 프로젝트에는 C++ 구현 및 헤더 파일 만 포함되어 있습니다. Win32 특정 코드가 없습니다._mainCRTStartup이 디버깅을 사용할 때 속도가 느린 이유는 무엇입니까?
많은 픽셀 그리기 작업을 수행합니다. 릴리스 구성에서는 즉시 발생하지만 디버그 구성으로는 매우 느립니다 (적어도 5 초 이상 걸립니다). 나는 내가 더 많이 그렸을 때 그것이 더 느려졌다는 것을 알아 차렸다. 그래서 나는 그것을 생각했다.
Visual C++ 프로파일 러는 _mainCRTStartup
에 소비 된 시간의 100 % (나는 반올림 한 것 같습니다)라고 말합니다. 이 C 런타임을 이해하지만 디버그 구성에서 너무 느리게 실행되는 원인은 무엇입니까? 동일한 C 코드는 디버그 및 릴리스 구성 모두에서 똑같이 즉각적입니다. _mainCRTStartup
이 훨씬 오래 걸리는 C++의 특별한 기능이 있습니까?
편집 : 분명히 내가 간과 한 것은 _mainCRTStartup 프레임 아래에 Unknown frame(s)
에 대한 참조입니다. 나는 이것이 main()
이고 그 자식 함수라고 가정합니다. 디버그 나 릴리스에서 내가 작성한 함수를 실제로 프로파일 링 할 수는 없습니다. 이 후 어디로 가야합니까?
'_mainCRTStartup'는'main'을 호출합니다 - 처음부터 끝까지 100 %가 분명히 전체 실행 시간입니다 .-) – Cameron
흥미 롭습니다. 그 맛있는 음식에 감사드립니다. 말이된다. 하지만 5 초 지연이 발생하기 전에 설명하지 않습니다. :( – johansson
디버깅의 성능에 대해 신경 쓸 필요가 없지만 시간이 걸리는 것을 알아 내고 싶다면 덜 거칠 필요가 있습니다. 시간의 100 %는 시작 코드 (' – GManNickG