помощью QtTest? Я всё ломаю голову как выследить падение программы, может с помощью этого варианта получится выявить. А ещё у меня вопрос почему я везде где встречался с работой сериальных портов, всегда используют синглетоны?
можно под дебагом запустить и увидеть, где падает. дебаггер точку останова покажет
Привет, да я эту тему поднимал тут с неделю назад, объяснял, не получится так легко под дебагером выловить эту ошибку, приложению необходимо в среднем с неделю работать, при этом обычно все норм, но периодически падает и обычно это у клиентов где нет дебагера
выведи стек в момент падения приложения
Мне бы выловить это падение для начала , я с ним ещё досихпор не встречался
Ну если разве что подскажите как вывести стек в дамп под виндой, буду признателен, вчера капался с отловлей SIGSEGV но пока что-то не очень понятно
Последовательный порт требует эклюзивного доступа, поэтому это находит отражение в организации доступа к нему в виде синглетона
Не пользовался, но часто встречал проект https://www.codeproject.com/Articles/11132/Walking-the-callstack-2 Его исходники на гитхабе https://github.com/JochenKalmbach/StackWalker Можно попробовать унаследоваться от класса StackWalker, переопределить метод OnOutput чтобы писало в файл. Когда будет сигнал SIGSEGV, в обработчике сигнала распечатать стек. Для теста можешь создать пустую программу и по таймеру через 3 секунды специально вылезти за границу и посмотреть, пишет ли логи и стек трейс. Кто нибудь пробовал на виндовсе, как оно работает?
у нас же уже есть стандартные средства std::stacktrace
а отловить SIGSEGV в виндовс не проблема?
ищу какие варианты санитайзеров есть под виндовс и mingw32
если mingw32, встречал такое https://asmaloney.com/2017/08/code/crash-reporting-for-mingw-32-windows-and-clang-macos-with-qt/ https://github.com/asmaloney/asmCrashReport
Бустовая версия на винде работает отвратительно :(
Она кроме register_frame_ctor что-то выводит?
Обсуждают сегодня