Ответ эксперта

Программа зависает при работе с базой: где причина?

Вопрос по направлению: Экспертиза исходного кода на Delphi

Ответ

Чаще всего не в программе, а в базе, и это важно для правильной постановки вопроса. Пока программа не отвечает, снимают снимок её состояния и смотрят, чем заняты потоки: ждут ли они ответа базы, встали ли на общей блокировке, заблокировали ли друг друга. Два-три снимка подряд отвечают, стоит работа или идёт медленно.

Если ожидание пришло со стороны базы, дальше смотрят уже её: какие соединения удерживают блокировку, какая операция её поставила, есть ли долгие запросы. По системам на Delphi типична ситуация, когда одно рабочее место держит открытой длинную операцию, а все остальные ждут его.

Вывод сопровождают описанием сценария, при котором зависание воспроизведено, и числом одновременных пользователей. Соответствует ли это условиям эксплуатации из задания, оценивает суд.

Актуализировано
Обсудить задачу

Нужна экспертиза или консультация?

Опишите ситуацию и цель обращения. Мы определим нужный вид исследования, подберём профильного эксперта и поможем подготовить вопросы и материалы.

  • Подберём специалиста
  • Поможем с вопросами
  • Оценим срок и стоимость
Оценить материалы или позвоните 8 (800) 333-24-09 Бесплатный звонок по России