Russian Qt Forum
Ноябрь 24, 2024, 14:18
Добро пожаловать,
Гость
. Пожалуйста,
войдите
или
зарегистрируйтесь
.
Вам не пришло
письмо с кодом активации?
1 час
1 день
1 неделя
1 месяц
Навсегда
Войти
Начало
Форум
WIKI (Вики)
FAQ
Помощь
Поиск
Войти
Регистрация
Russian Qt Forum
>
Forum
>
Qt
>
Общие вопросы
>
QT и память
Страниц:
1
[
2
]
Вниз
« предыдущая тема
следующая тема »
Печать
Автор
Тема: QT и память (Прочитано 15494 раз)
noosooth
Гость
QT и память
«
Ответ #15 :
Апрель 09, 2007, 10:06 »
Господа, про уменьшение "Mem Usage" (Working Set) под виндой при
минимизации top-level окна читайте
вот здесь
.
Ну и про функцию SetProcessWorkingSetSize() в MSDN.
Записан
pakulo
Гость
QT и память
«
Ответ #16 :
Апрель 09, 2007, 16:27 »
Mr. Пронька,
Вот именно, поэтому я и спросил. Мне кажеться что это все работа ХР. Такое наблюдал я и с Оперой, занимает 80мб, свернул уже 20Мб (Она тоже на QT). Вот Лиса никак не уменьшает память при сворачивание. Поэтому меня и интересует, это дело библиотеки или ОС. Свернул Ворд, занимал 20Мб, стало 1Мб. Свернул Експлорер было 15Мб, стало 1.5Мб. Все как-то странно.
И почему когда я сворачиваю в трей программу на КуТе, то память не уменьшается?
добавлено спустя 5 часов 58 минут:
У кого есть utorrent или MSN, то можно увидеть, что при сворачивании программы в трей, размер занимаемый программой в памяти уменьшается.
Как это реализовано?
Записан
_govorilka
Гость
QT и память
«
Ответ #17 :
Апрель 09, 2007, 16:39 »
Цитата: "Mr. Пронька"
Цитировать
Вроде как XP буферизирует (частично) видео вывод, вот выделяет память под окна.
Всякое возможно. А с другими приложениями вы этот трюк наблюдали? Я уже когда-то поднимал тему про выделение памяти в Qt-приложениях, но никто ничего толком ответить не смог. Дело не только в том, что при сворачивании количество потребляемой памяти снижается. При разворачивании окна на весь экран оно ещё и увеличивается!
Вывод буферизирует не XP, а Qt, причем использует для этого QPixmap. Чем больше размер вашего окна, тем требуется для хранения буфера. При сворачивании буфер уничтожается, поэтому программа потребляет меньше памяти.
Записан
pakulo
Гость
QT и память
«
Ответ #18 :
Апрель 09, 2007, 17:29 »
Как можно реализовать очистку буфера когда программа сворачивается в трей?
Записан
_govorilka
Гость
QT и память
«
Ответ #19 :
Апрель 09, 2007, 17:33 »
Цитата: "pakulo"
Как можно реализовать очистку буфера когда программа сворачивается в трей?
Qt сама очищает буфер, при сворачивание окна, а вот операционка (WinXP) очищает неиспользуемую память через раз.
Не понимаю, почему ты так зациклился на этой проблеме, неужели других нет.
Записан
pakulo
Гость
QT и память
«
Ответ #20 :
Апрель 09, 2007, 17:40 »
Проблем много. Решаю все параллельно
Эта проблема очень волнует, так как программа в памяти может занимать до 20Мб и когда свернул ее в трей, всеравно 20Мб, а хотелось бы по меньше.
QT не очищает буфер при сворачивании в трей, очищает при минимизации.
Записан
_govorilka
Гость
QT и память
«
Ответ #21 :
Апрель 09, 2007, 18:05 »
Цитата: "pakulo"
Проблем много. Решаю все параллельно
Эта проблема очень волнует, так как программа в памяти может занимать до 20Мб и когда свернул ее в трей, всеравно 20Мб, а хотелось бы по меньше.
QT не очищает буфер при сворачивании в трей, очищает при минимизации.
Можно вопрос, какой компилятор используешь? С какими настройками?
Записан
pakulo
Гость
QT и память
«
Ответ #22 :
Апрель 09, 2007, 18:15 »
Использую mingw32.
Какие настройки нужны?
Записан
_govorilka
Гость
QT и память
«
Ответ #23 :
Апрель 09, 2007, 18:23 »
Цитата: "pakulo"
Использую mingw32.
Какие настройки нужны?
Мне кажется, что VS все-таки лучше, чем mingw32 (после этого сообщения все опять начнут Holy War), программы занимают меньше памяти и код выполняется быстрее. Установи и сравни, в любой случае всегда потом сможешь удалить. Почитай тему про компиляторы, там есть полезные ответы.
Вовремя удаляй не нужные объекты, например, при сворачивание в трей, можно удалить окно программы, а при разворачивание создать его заново.
Записан
pakulo
Гость
QT и память
«
Ответ #24 :
Апрель 09, 2007, 19:02 »
Спасибо буду смотреть.
Записан
Страниц:
1
[
2
]
Вверх
Печать
« предыдущая тема
следующая тема »
Перейти в:
Пожалуйста, выберите назначение:
-----------------------------
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 сферы
=> Говорилка
=> Юмор
=> Объявления
Загружается...