Я отлаживаю (собственное) многопоточное приложение C++ под Visual Studio 2008. В кажущихся случайным случаями я получаю сообщение «Windows вызвало ошибку ...» с примечанием о том, что это может быть связано с коррупция в куче. Эти ошибки не всегда приводят к краху приложения сразу, хотя это может привести к краху после.Как отлаживать ошибки повреждения кучи?
Большая проблема с этими ошибками заключается в том, что они появляются только после того, как на самом деле произошло повреждение, что делает их очень трудными для отслеживания и отладки, особенно в многопоточном приложении.
Что может быть причиной этих ошибок?
Как отладить их?
Подсказки, инструменты, методы, просветы ... приветствуются.
Одна крошечная вещь, заслуживающая внимания в Application Verifier: вы должны зарегистрировать символы Application Verifier перед символами символа символа Microsoft в пути поиска символа, если вы используете это ... Я немного искал, чтобы понять, почему! Avrf wasn ' t найти необходимые символы. – leander
Application Verifier был очень полезен, и в сочетании с некоторыми догадками я смог решить проблему! Большое спасибо, и всем остальным, за то, что они подняли полезные пункты. – 2009-06-18 15:29:36
Должен ли использоваться Application Verifier с WinDbg или он должен работать с отладчиком Visual Studio? Я пытался использовать его, но он не вызывает никаких ошибок или, по-видимому, ничего не делает, когда я отлаживаю VS2012. –