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

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

Страниц: [1]   Вниз
  Печать  
Автор Тема: Увеличение объёма памяти  (Прочитано 5266 раз)
LeX
Гость
« : Июль 23, 2009, 11:35 »

Доброго времени суток.

Есть вопрос который задавался здесь не однократно, но ответа на него так ни кто и не получил.
При выполнении запроса с выборкой большого объема данных, приложение начинает разбухать,а при удалении объектов память не освобождается.
Я так понял не у меня первого возникла эта проблема, кто-то решал её?
Записан
Пантер
Administrator
Джедай : наставник для всех
*****
Offline Offline

Сообщений: 5876


Жаждущий знаний


Просмотр профиля WWW
« Ответ #1 : Июль 23, 2009, 11:42 »

Стандартный вопрос: чем замерял память?
Записан

1. Qt - Qt Development Frameworks; QT - QuickTime
2. Не используйте в исходниках символы кириллицы!!!
3. Пользуйтесь тегом code при оформлении сообщений.
ритт
Гость
« Ответ #2 : Июль 23, 2009, 12:49 »

у меня таких проблем не возникает.
Записан
LeX
Гость
« Ответ #3 : Июль 23, 2009, 13:23 »

Да уже разобрался, это спицифика работы Qt. Просто при работе запроса память утекает, а при удалении объекта не возвращается, но помечается как свободная. В случае повторного запроса память больше не утекает. Как я понял это сделано для того чтобы сократить время и оптимизировать работу.
Если я не прав поправьте  Улыбающийся
« Последнее редактирование: Июль 23, 2009, 13:25 от LeX » Записан
LeX
Гость
« Ответ #4 : Июль 24, 2009, 12:20 »

Стандартный вопрос: чем замерял память?
ОС Red Hat Enterprise Linux 5 ядро 2.6.28.8
Тестил Valgrind 3.4.1
Версия Qt 4.5.0
Чёт меня не особо устраивает такая организация Грустный
А под виндовозами возвращается память после отработки, что-то надо с этим решать...
Мжет кто подскажет что можно сделать?
« Последнее редактирование: Июль 24, 2009, 13:34 от LeX » Записан
Blayder
Гость
« Ответ #5 : Июль 27, 2009, 12:19 »

что значет:
Цитировать
не возвращается, но помечается как свободная
Или вы специфику работы с паматью в *nix системах не просматривали?
В линухе практически вся свободная память постоянно кешируется.
Отсуда если у вас и было свободное место в раме и потом оно не вернулось - значит оно кешируется.
И это абсолютно правильное поведение. Ведь толку от рамы, если она стоит пустая и не используется?
Цитировать
RAM is wasted if it isn't used
http://www.linuxhowtos.org/System/Linux%20Memory%20Management.htm
Сорь, на русском потерял линку...
« Последнее редактирование: Июль 27, 2009, 12:25 от Blayder » Записан
LeX
Гость
« Ответ #6 : Август 10, 2009, 12:08 »

что значет:
Цитировать
не возвращается, но помечается как свободная
Или вы специфику работы с паматью в *nix системах не просматривали?
В линухе практически вся свободная память постоянно кешируется.
Отсуда если у вас и было свободное место в раме и потом оно не вернулось - значит оно кешируется.
И это абсолютно правильное поведение. Ведь толку от рамы, если она стоит пустая и не используется?
Цитировать
RAM is wasted if it isn't used
http://www.linuxhowtos.org/System/Linux%20Memory%20Management.htm
Сорь, на русском потерял линку...

Спасибо, почитал инфу и решил вопрос Улыбающийся
Записан
Страниц: [1]   Вверх
  Печать  
 
Перейти в:  


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