Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Основная";
Текущий архив: 2003.10.23;
Скачать: [xml.tar.bz2];

Вниз

Почему прога много занимает памяти?   Найти похожие ветки 

 
PavelOKES   (2003-10-09 13:13) [0]

Прога весит 370Кб. (самоделка, висит в трее и переключает показ/не_показ картинки в IE. ) В памяти занимает 2,9 Мб! Кто-нить знает, почему так много жрется памяти? И как можно снизить расход памяти?


 
clickmaker   (2003-10-09 13:34) [1]

Подробней: на чем написана, с использованием каких компонент, и как собственно с IE общается?


 
PavelOKES   (2003-10-09 13:39) [2]

Написана на дельфи, само собой; использует децильный компонент TTrayComp, прямой потомок TComponent. С IE не общается, меняет настройки в реестре. (кстати, еще неплохо было бы заставить ее принудительно обновлять IE.)


 
BOA_KAA   (2003-10-09 13:44) [3]

> PavelOKES

А чего общего между тем, сколько она занимает на диске и в ОП?


 
han_malign   (2003-10-09 13:47) [4]

>децильный компонент TTrayComp
- компонент не может быть "децельным", потому что тянет за собой VCL, а это как минимум ~300 кило SysUtils(~100Кб в D6,D7)


 
clickmaker   (2003-10-09 13:49) [5]

> неплохо было бы заставить ее принудительно обновлять IE

WM_SETTINGCHANGE с указанием ключа реестра не помогает ?


 
PavelOKES   (2003-10-09 13:54) [6]

>> BOA_KAA
Ну а как же? Программа размещает в памяти свой код и динамические данные. Кода там практически никакого нет (по крайней мере, написанного мною), данных тоже. Динамических массивов я там не создаю. Так что получается, что это уже библиотеки подключаются... Плохо. В принципе, даже при моих 256 эти 3 мега не жалко, но обидно, что на всякую муть так нерационально тратится память.


 
BOA_KAA   (2003-10-09 13:55) [7]

А ты подожди пэцл. Она успокоится, жрать меньше будет (кстати, я серьезно)


 
PavelOKES   (2003-10-09 13:56) [8]

to clickmaker - ты предлагаешь найти все окна IE и послать его на WM_SETTINGCHANGE? Надо попробовать... Кстати, не знаешь тип окна? А то при поиске надо знать тип и/или заголовок. Заголовок, сам понимашь, не прет.


 
PavelOKES   (2003-10-09 13:56) [9]

>> BOA_KAA
С утра жду. :-) у нас уже 15:56.


 
Dimka Maslov   (2003-10-09 14:00) [10]

>PavelOKES
А чем это страшно, что твоя прога занимает 2,9 мегабайта памяти? Это как-то сказывается на производительности? Вот если бы она занимала 29 мегабайта, тогда нужно думать, что сделать, а так ты НИЧЕГО не сделаешь, чтобы снизить это число, которое к тому выдаётся с ошибками, ибо в него включается размер всех разделяемых и системных библиотек.


 
Zhouck   (2003-10-09 14:03) [11]

Все дело в подгружаемых библиотеках. Я вот на асме под вынь написал блокнот, так он занимал 16 Кб, а в памяти - 600 Кб


 
clickmaker   (2003-10-09 14:04) [12]

> PavelOKES (09.10.03 13:56) [8]

IEFrame


 
PavelOKES   (2003-10-09 14:07) [13]

to Dimka Maslov >>
Спасибо, успокоил. :-) Нет, конечно, на производительности не сказывается.
Не помру, конечно, от нехватки памяти, просто мне было интересно выяснить причину пожирания памяти при таком маленьком exe-файле. Хорошо, конечно, что туда включен размер уже загруженных библиотек... а ну-как посчитаем... Суммарный размер всех процессов - 160Мб, а используется памяти - 204... Что-то не сходится.


 
BOA_KAA   (2003-10-09 14:18) [14]

> Что-то не сходится

А чего ты считаешь?


 
PavelOKES   (2003-10-09 14:24) [15]

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


 
clickmaker   (2003-10-09 14:29) [16]

Элементарнейшее Дельфовское приложение из одной формы с несколькими стандартными контролами занимает в среднем в памяти около 2 метров. А что делать, это плата за удобство VCL...


 
Плохиш_   (2003-10-09 14:37) [17]

>PavelOKES (09.10.03 14:24) [15]


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


Я плякал ...
Посмотри память в диспетчере задач для приложений в нормальном виде и минимизированном. Во удивишься :-)


 
PavelOKES   (2003-10-09 14:53) [18]

to Плохош_. >> Не плакай. Тут нет ничего удивительного и странного. Когда, например, дельфа свернута, ей совершенно незачем жрать 40 мб оперативки, ее области сбрасываются в своп. А в диспетчере на закладке "Процессы" указывается именно оперативка, а не подкачка. Вот отсюда и разница.


 
ZEE   (2003-10-09 14:53) [19]

0> clickmaker © (09.10.03 14:29) [16]
> Элементарнейшее Дельфовское приложение из одной формы с
> несколькими стандартными контролами занимает в среднем в
> памяти около 2 метров. А что делать, это плата за удобство
> VCL...
На Апи тоже не фонтан - прога: окно + тулбар + немного рисования на самой форме = 1928Кб в памяти :(


 
Mystic   (2003-10-09 15:06) [20]

А такой вопрос: есть библиотека DLL, которую используют три процесса. Секция кода, к какому процессу ее приплюсовать? Имхо, Task manager плюсует ее ко всем. Так что это несколько необъективное число...


 
ZEE   (2003-10-09 15:14) [21]

>Mystic © (09.10.03 15:06) [20]
>Task manager плюсует ее ко всем.
думается не ко всем - есть процессы и по 16, 84, 96 Кб



Страницы: 1 вся ветка

Форум: "Основная";
Текущий архив: 2003.10.23;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.49 MB
Время: 0.011 c
1-74220
Abikos
2003-10-09 17:22
2003.10.23
Ищу бесплатные компоненты для отображения animated gifs


6-74346
Son!K
2003-08-27 05:47
2003.10.23
Сокеты


1-74196
KSergey
2003-10-10 09:39
2003.10.23
Про передачу массивов в ф-цию и т.д.


14-74451
Думкин
2003-10-03 05:12
2003.10.23
С днем рождения! 3 октября.


14-74395
malkolinge
2003-10-06 12:09
2003.10.23
Долой C#





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский