Pull to refresh

Comments 4

UFO just landed and posted this here
не совсем корректно в с++ называть системные сигналы «исключениями», а для печати стектрейса лучше использовать какую-нибудь готовую библиотеку (тот же boost stacktrace) чем а4 листинг на языке winapi. Для отладки достаточно удобен google breakpad — вычленяет максимум дебажной инфы даже при работе с релизными бинарями, но там стектрейс надо доставать из бинарных дампов.
О, мододелы для S.T.A.L.K.E.R. на Хабре. Временами кажется, что комьюнити вложило больше человекочасов в X-Ray Engine, чем GSC. Пример хороший, спасибо.

Добавлю свой пятачок в копилку опыта. Реализовав в программе вывод стека в аварийной ситуации следующим полезным шагом будет сторожевой таймер с выводом стека в последние секунды жизни приложения. Не один посмертный, а именно несколько отсчетов. Очень помогает ловить останавливающиеся или зависшие потоки. Особенно в больших приложениях, когда у нас не просто куча экземпляров одинаковых потоков, а каждый поток индивидуален (свой класс, свой бинарный модуль, свой разработчик) и их счет переваливает за десятки.

Sign up to leave a comment.

Articles