Russian Qt Forum
Ноябрь 01, 2024, 15:17
Добро пожаловать,
Гость
. Пожалуйста,
войдите
или
зарегистрируйтесь
.
Вам не пришло
письмо с кодом активации?
1 час
1 день
1 неделя
1 месяц
Навсегда
Войти
Начало
Форум
WIKI (Вики)
FAQ
Помощь
Поиск
Войти
Регистрация
Russian Qt Forum
>
Forum
>
Qt
>
Установка, сборка, отладка, тестирование
>
Профилирование программы: как узнать от чего прога дохнет (виснет)
Страниц: [
1
]
Вниз
« предыдущая тема
следующая тема »
Печать
Автор
Тема: Профилирование программы: как узнать от чего прога дохнет (виснет) (Прочитано 2466 раз)
Fregloin
Супер
Offline
Сообщений: 1025
Профилирование программы: как узнать от чего прога дохнет (виснет)
«
:
Июнь 12, 2014, 17:13 »
Привет. В двух словах: программа является АРМом, задача которого на основании данных с серверов обновлять состояния графических элементов на сцене.
Элементов довольно много, но в целом изменений в одну единицу времени не много. Данные представлены в виде json.
В качестве парсера используется нативный QJsonDocument/QJsonObject. Сцена QGrpahicsView/QGraphicsScene.
Столкнулся с такой бедой - при работе программы через несколько часов прога иногда подвисает, а иногда и нет. Вобщем как лучше узнать, что является причиной зависания.
Валгринд под линами выдает очень много утечек, особенно в системных либах и либах Qt, а так же ругается на очевидные вещи и понять, где конкретно утечка не представляется
возможным. Прогу разрабатываю под линами, но в конечном итоге она собирается под винду.
Записан
Fregloin
Супер
Offline
Сообщений: 1025
Re: Профилирование программы: как узнать от чего прога дохнет (виснет)
«
Ответ #1 :
Июнь 12, 2014, 17:38 »
Еще вопрос по освобождению памяти в Qt: память возвращается сразу после удаления QObject или не сразу?
Посмотрел в диспетчере задач, что при смене файла в программе, память не освобождается, хотя сообщения вызываемые из деструкторов говорят об обратном.
Записан
Old
Джедай : наставник для всех
Offline
Сообщений: 4350
Re: Профилирование программы: как узнать от чего прога дохнет (виснет)
«
Ответ #2 :
Июнь 12, 2014, 18:59 »
Цитата: Fregloin от Июнь 12, 2014, 17:38
Посмотрел в диспетчере задач, что при смене файла в программе, память не освобождается, хотя сообщения вызываемые из деструкторов говорят об обратном.
Не мониторьте память по диспетчеру, он показывает не совсем ту память.
Память освобождается сразу.
Записан
Страниц: [
1
]
Вверх
Печать
« предыдущая тема
следующая тема »
Перейти в:
Пожалуйста, выберите назначение:
-----------------------------
Qt
-----------------------------
=> Вопросы новичков
=> Уроки и статьи
=> Установка, сборка, отладка, тестирование
=> Общие вопросы
=> Пользовательский интерфейс (GUI)
=> Qt Quick
=> Model-View (MV)
=> Базы данных
=> Работа с сетью
=> Многопоточное программирование, процессы
=> Мультимедиа
=> 2D и 3D графика
=> OpenGL
=> Печать
=> Интернационализация, локализация
=> QSS
=> XML
=> Qt Script, QtWebKit
=> ActiveX
=> Qt Embedded
=> Дополнительные компоненты
=> Кладовая готовых решений
=> Вклад сообщества в Qt
=> Qt-инструментарий
-----------------------------
Программирование
-----------------------------
=> Общий
=> С/C++
=> Python
=> Алгоритмы
=> Базы данных
=> Разработка игр
-----------------------------
Компиляторы и платформы
-----------------------------
=> Linux
=> Windows
=> Mac OS X
=> Компиляторы
===> Visual C++
-----------------------------
Разное
-----------------------------
=> Новости
===> Новости Qt сообщества
===> Новости IT сферы
=> Говорилка
=> Юмор
=> Объявления
Загружается...