2011-10-27 5 views
1

WinDbg를 통해 디버깅을 수행해야하는 경우, 프로 또는 단점 또는 릴리스 대 디버그 빌드가 있습니까? 릴리스 빌드로 디버깅을하는 데 제한이 있는지 궁금합니다.릴리스 대 v 전 디버그 빌드

답변

2

먼저 디버그 정보 (.pdb)가 필요합니다. 둘 다 가질 수 있습니다.

  • 일부 변수

    레지스터에 매핑 (더 이상 메모리를 점유 없음)되어,
  • 일부 기능이 인라인 (그리고 당신이 그들에 중단 점을 넣을 수 없습니다)
  • 일부 : 다음 릴리스는 일반적으로 최적화 된 빌드 코드가 재정렬됩니다.

이 순간에 무슨 일이 벌어지고 있는지 이해하기가 훨씬 어렵습니다.

그래서 일반적으로 릴리스 빌드는 주목할 만하게 더 빠를 것이지만 종종 디버그하기가 더 어렵습니다. 그 외에는 심각한 차이가 없어야합니다. 이 URL을 통해

+0

주에 관련된 좋은 토론이있다. 꽤 깔끔한 것들, 그것에 대해 흥미로운 게시물이 있습니다 : http://blogs.microsoft.co.il/blogs/sasha/archive/2011/10/12/debugging-optimized-code-in-visual-studio-11.aspx – snoone

+0

릴리스가 디버그하기가 더 어려울 것이라고 말하면 디버그 빌드가 더 쉬워지는 방법에 대한 몇 가지 구체적인 예를 제공 할 수 있습니까? –

+0

@Silverlight Student : 음, 어떤 함수의 여는 중괄호에 중단 점을 설정하여 함수가 호출 될 때마다 중단 점을 설정하려고한다고 가정 해 보겠습니다. 그 함수가 인라인되면 당신은 그렇게 할 수 없다 - 그 함수에 대한 호출이 없기 때문에, 호출 사이트가 어디인지 추론해야하고 어떤 코드가 그 함수의 인라인 코드와 정확히 일치하는지 알아 내야 할 것이다. – sharptooth

1

이동은 PDB 파일 형식의 다음 버전이 최적화 된 코드 디버깅을위한 개선 된 지원을 위하여려고하고 있다는 것을이

Separate 'debug' and 'release' builds?

관련 문제