Утечки памяти в в иксовых программах вообще и в Qt в частности
Здравствуйте все!
Только что прочитал на http://linux.org.ru о том, что вышла Qt-3.3.3,
написано, что кроме всего прочего, там исправлены утечки памяти. Как на
практике выглядят такие утечки?
Сейчас стоит Qt-3.3.2 (собрана из SRPM-пакета от Fedora Core 2), сижу в
KDE и пользуюсь в основном программами на Qt. Эти самые утечки имеют
место быть. Явно "течет" Konqueror (3.2.2) и сам X-сервер (процесс X).
Стоит XFree86-4.3.0 из дистрибутива ASP Linux 9, пересобран из SRPM с
оптимизацией. Вот и непонятно: может ли расти объем в памяти X-сервера
из-за утечек в Qt? Или же я перемудрил где-то. Не могу точно сказать,
когда такое началось.
Еще очень быстро растет объем Gkrellm, но это, похоже, его собственные
заморочки (стоит версия 2.2.1, с 2.2.0 было то же самое, а с 2.1.9
такого не наблюдалось).
Спасибо за ответы-советы.
PS: попробую поставить Qt-3.3.1, посмотрю, что будет, 3.3.2 ставил ради
KDE 3.3, но похоже у меня не хватит денег выкачать его по модему :(
On Четверг 12 Август 2004 17:58, 9A4172 wrote:
Объём X сервера растёт из-за того, что он интенсивно использует
динамическую память. Вероятно, что и konqueror пухнет по этой же
причине. Не забывайте, что память, освободившаеся у процесса
обратно в систему возвращается только после его завершения, а её
повторному использованию внутри процесса может помешать
сегментация, особенно если захват и освобождение больших блоков
следуют без какой-либо закономерности.
У меня X достаточно быстро распухает мегабайт до 100, а потом
расти перестаёт. А из konqueror-ов я периодически выхожу.
Утечки памяти тоже, наверное есть, только крупные утечки обычно
устраняются быстро, а мелкие расходуют памяти не больше, чем
сегментация.
Вряд ли поможет. Тут совет один - добавлять RAM. Мне 256M было
мало для работы под KDE, а 512 вполне хватает.