Russian Qt Forum
Ноябрь 24, 2024, 03:43 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

Войти
 
  Начало   Форум  WIKI (Вики)FAQ Помощь Поиск Войти Регистрация  

Страниц: 1 [2]   Вниз
  Печать  
Автор Тема: Ваша программа падает у пользователей - ваши действия.  (Прочитано 14320 раз)
crackedmind
Гость
« Ответ #15 : Июль 21, 2009, 00:48 »

dump + подробный лог спасут Улыбающийся
Записан
break
Гипер активный житель
*****
Offline Offline

Сообщений: 846


Просмотр профиля
« Ответ #16 : Июль 21, 2009, 01:01 »

Цитировать
dump + подробный лог спасут

Как если причиной краха является внешняя программа или битая планка памяти? А ошибка в модуле памяти может проявляться раз в 2 недели...
Записан
kirill
Гость
« Ответ #17 : Июль 21, 2009, 04:33 »

Была статейка у Криса по этому поводу.
Цитировать
при возникновении критической ошибки, система завершает работу приложения еще до того, как будут сброшены дисковые буфера. Даже использование функции fflush ничего не решает (а вот скорость программы замедляет весьма радикально). Как же быть?! Да очень просто - создать в shared-memory кольцевой буфер заданного размера и весь отладочный вывод направлять туда, читая оттуда с помощью дочернего процесса. Тогда при аварийном завершении материнского процесса shared-memory не будет освобождена системой и дочерний процесс успеет принять последнее отладочное сообщение, отправленное упавшей программой. К тому же, этот метод работает намного быстрее прямой записи на диск.

http://www.insidepro.com/kk/200r.shtml
Записан
break
Гипер активный житель
*****
Offline Offline

Сообщений: 846


Просмотр профиля
« Ответ #18 : Июль 21, 2009, 05:46 »

Все равно если причина неисправное железо - ничего не даст... (модуль памяти или перегревающаяся видюха или проц). Какой бы не был механизм вывода хороший - что выводить то если в программе все ОК? Или если ошибка в другой программе - написанной не пойми кем (антивирус...)
Записан
kirill
Гость
« Ответ #19 : Июль 21, 2009, 10:44 »

Никто и не говорит, что надо тестировать железо перед запуском.
Просто у Админа скорее всего проблема не с железом а бага в коде вот и все. Тщательный анализ лог файла поможет локализовать ее.
Записан
Admin
Administrator
Джедай : наставник для всех
*****
Offline Offline

Сообщений: 1988



Просмотр профиля
« Ответ #20 : Июль 21, 2009, 13:12 »

То что бага с кодом, это однозначно. Только у меня нигде не падает Грустный. Вообще идеи есть - есть пара мест в проектировании программы, которорые сделаны на авось.
Записан
kirill
Гость
« Ответ #21 : Июль 21, 2009, 14:26 »

Может ты потоки используешь? Там бага может проявляться через раз и даже реже.
Записан
Admin
Administrator
Джедай : наставник для всех
*****
Offline Offline

Сообщений: 1988



Просмотр профиля
« Ответ #22 : Июль 21, 2009, 14:53 »

Использую - дело в том, что поток и основная программа пишут в базу данных, и синхронизация доступа к базе сделана только на уровне транзакции базы.
Записан
Страниц: 1 [2]   Вверх
  Печать  
 
Перейти в:  


Страница сгенерирована за 0.048 секунд. Запросов: 22.