Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Программа в оперативной памяти [D7, WinXP]


Turbid ©   (2006-05-30 18:34:00) 

Пробую написать программу на чистом WinApi, но столкнулся с такой проблемой: создав всего одно окно и разместив иконку в трее программа уже занимает 2,5-3Mb в памяти. Такое положение никак не устраивает - аналогичная программа на VCL заниемает столько-же. Друг посоветовал использовать функцию  SetProcessWorkingSetSize, но почитав про нее в SDK и на некоторых форумах пришел к выводу, что это не более чем фикция. Помогите советом. Стараюсь писать очень оптимально, по возможности использую указатели вместо переменных, но...


Игорь Шевченко   (2006-06-19 10:24:00) [1]

Не надо верить диспетчеру


Чародей   (2006-06-18 11:29:00) [2]

2-3 метра это нормально Aligment секций + стандартно 1М на кучу, на стек.
З.Ы. Однострочные проги на асме в памяти(как показывает диспетчер) занимаю ~1.2M


Denister   (2006-06-17 20:20:00) [3]

попробуй свернуть окно - потом восстановить и посмотри на количество занимаемой памяти :().   Я точно знаю что ShellApi минимум метр добавляет.
Есть кстати софт, который показывает сколько занимает конкретный модуль (например твоя прога) а сколько дллки. А диспетчер показывает все вместе :) так что не боись...


Turbid   (2006-05-31 08:53:00) [4]

2Eraser:
Все аккурат заключается в try..finally

2atruhin:
Windows, Messages, ShellApi


atruhin   (2006-05-31 05:54:00) [5]

Для начала приведи список используемых модулей и сколько памяти запрашиваешь динамически.


Eraser   (2006-05-31 02:13:00) [6]


> Turbid ©   (31.05.06 00:34) [5]

так и пусть ориентируются дальше.
я бы посоветовал просто писАть грамотный код, не особо задумываясь о размерах какого-то мифического WorkingSetSize, а система сама разберётся что, куда и сколько выделять.

> Стараюсь писать очень оптимально, по возможности использую
> указатели вместо переменных

главное не забывай потом особождать память, на которую указывают эти указатели ;-))


Turbid   (2006-05-31 00:34:00) [7]

Хотя бы по показаниям диспечера задач. Знаю что он считает своими попугаями, но пользователи то ориентируются на него...


Eraser   (2006-05-31 00:00:00) [8]


> Turbid ©   (30.05.06 18:34)


> в трее программа уже занимает 2,5-3Mb в памяти.

какой памяти? памятей их много всяких в виндовсе, и вряд ли данный показатель характерезует физическую память.


Turbid   (2006-05-30 22:01:00) [9]

2Джо
О чем вы? Я имел ввиду писать оптимальный код.


Джо   (2006-05-30 21:27:00) [10]

> по возможности использую указатели вместо переменных, но...

Вот оно как, оказывается, можно "писать экономно"...


tesseract   (2006-05-30 21:26:00) [11]

не парься 2,5 Мб нормальный размер, скорре всего что-то с ресурсами или ты просто запаковал прогу каким-нибудь архиватором.


Наверх

Титульная страница Поиск, карта сайта Написать письмо