Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2005.06.29;
Скачать: CL | DM;

Вниз

Сжатие программ.   Найти похожие ветки 

 
Galiaf   (2005-06-05 19:36) [0]

Доброго вам времени суток. У меня нарисовалась такая проблема. Программа написанная на Delphi занимает много памяти, хотелось бы поменьше, потому что эта прога всегда у меня запущена. Я читал про архиватор ASPack но он почти не уменьшает занимаемую память и ещё бросает ошибку если прога запускается с активным ServerSocket. Ещё читал про програмирование на чистом WinApi но это тоже не то. Если кто знает как можно уменьшить занимаемую память прошу помочь.


 
SergP ©   (2005-06-05 20:28) [1]

попробуй KOL


 
_dimka   (2005-06-05 20:29) [2]

А причем тут сжатие исполняемого файла, и оперативную память которую он использует? Если ты его сожмеш ASPack то оперативки у тебя хавать меньше не станет.


 
Galiaf   (2005-06-05 21:16) [3]


> попробуй KOL

А что такое KOL?


 
begin...end ©   (2005-06-05 21:23) [4]

> Galiaf   (05.06.05 21:16) [3]

http://delphi.vline.ru/cgi-bin/forum.pl?n=10
http://www.kolnmck.ru


 
Zacho ©   (2005-06-05 21:35) [5]

2 Galiaf :

Никакой "архиватор" не уменьшит "занимаемую" память. Вот увеличить - вполне может. Может уменьшить только размер файла

А вообще, забудь об этом. Память нынче дешевая.


 
Galiaf   (2005-06-05 21:38) [6]


> А вообще, забудь об этом. Память нынче дешевая.

Память не дорогая но у меня всёравно нет средств поставить новую аперативку.


 
Anatoly Podgoretsky ©   (2005-06-05 21:39) [7]

Zacho ©   (05.06.05 21:35) [5]
А причем тут память, каждой программе выделяется 2 гб бесплатно.


 
Galiaf   (2005-06-05 21:41) [8]


> begin...end ©   (05.06.05 21:23) [4]

Я открыл страницу про KOL и MCK и увидел "Чтобы получить первоначальные знания о KOL и MCK прочитайте статью KOL - кодоэкономичная объектная библиотека для Delphi, написанную автором KOL Владимиром Кладовым.", кликнув на ссылку я не смог отобразить страницу. Мне интересно как разобраться с этим KOL.


 
Eraser ©   (2005-06-05 21:52) [9]

Galiaf

Послушай, что АП [7] говорит. Память, занимаемая программой - весч растяжимая ) Бывает виртуальная память, которой 2 ГБ, бывает физическая, бывает страничная. Так вот если твоя прога просто запущена и нечего не делает, то скорее всего почти вся память, занимаемая ей, сброшена в кэш (страничную память) или сбросится туда при нехватке физ. памяти. Так что я бы не стал запорачиваться на показаниях таскменеджера.

Для получения более подробной инфы о состоянии памяти процесса, советую использовать Precess Explorer http://sysinternals.com/


 
Anatoly Podgoretsky ©   (2005-06-05 21:55) [10]

Физическая (оперативная) память пользовательским программам не доступа и не используется, туда засылаются только нужные страницы и обратно выгружаются если они не нужны. С кешем тоже не все ясно, не все туда гонится, часть остается в самом ехе, хотя кажется что в кэше. В общем дело ясное, что дело темное.


 
Zacho ©   (2005-06-05 22:03) [11]

Anatoly Podgoretsky ©   (05.06.05 21:39) [7]

:)

2 Galiaf :

Преход на "чистое" WinAPI или KOL не даст тебе большой экономии памяти. Килобайт 300 примерно. В лучшем случае. Сам подумай, для твоей задачи это критично ?


 
Galiaf   (2005-06-05 22:28) [12]

Просто мой чат всегда работает, я даже с панели задач его убрал и засунул в трей, а в таскменеджере всегда не менее 3 мег. Я думаю для этого чата слишком много 3 мег. Я и так как можно меньше переменных использовал. Но если опытные считают что я не прав, то придёться согласиться.


 
Zacho ©   (2005-06-05 22:34) [13]

Galiaf   (05.06.05 22:28) [12]

"Опытные" намекают, что то, что ты видишь в Task Manager"е надо ещё и обдумывать.

P.S. "засовывание в трей" никак не может уменьшить объём физ. памяти, занимаемой процессом.


 
Anatoly Podgoretsky ©   (2005-06-05 22:37) [14]

Galiaf   (05.06.05 22:28) [12]
Вообще то мало.


 
Eraser ©   (2005-06-05 22:38) [15]

Galiaf   (05.06.05 22:28) [12]

Итак, открываю PE, смотрю сколько аська жрёт:

Private Bytes: 20332 KB
Working Set: 12420 KB

Так что рано тебе вешаться ;-)


 
Dimaxx ©   (2005-06-05 22:55) [16]

Занимаемую память можно посмотреть и без примочек типа РЕ. Настройте колонки в TaskManager"е и все увидите по Ctrl+Alt+Del.


 
Anatoly Podgoretsky ©   (2005-06-05 22:57) [17]

Можно, но только как психологическое оружие.


 
Galiaf   (2005-06-05 23:43) [18]


> P.S. "засовывание в трей" никак не может уменьшить объём
> физ. памяти, занимаемой процессом.

Я в трей засовывал не для того что бы меньше памяти жрала, а для того что бы мненьше места на панели задач занимала ;).


 
Galiaf   (2005-06-05 23:47) [19]


> Вообще то мало.

Даже если 3 мег. мало для проги которая всегда в процессах седит, то всё равно хотелось бы узнать как можно уменьшать занимаемую память(на будующее).


 
sniknik ©   (2005-06-06 00:40) [20]

да легко, вызывай время от времени
SetProcessWorkingSetSize(GetCurrentProcess, dword(-1), dword(-1));

но только, скидывая таким образом память ты в другом проиграеш, в производительности системы, т.к. будеш вмешиватся в ее нормальную работу (сделав ненормальной. делать ей болше нечего как память туда сюда перетасовывать, перераспределять... и только потому что какомуто недоучке цифры отображаемые не нравятся)

p.s. совет. функцию проверь, но не пользуйся(!!!) ибо хуже только сделаеш.


 
Anatoly Podgoretsky ©   (2005-06-06 09:02) [21]

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


 
Galiaf   (2005-06-07 20:09) [22]

Я тут недавно слил KOL и MCK но у меня возникли проблемы, или я неправильно ставил, или KOL не идёт под Delphi 2005. Кто поможет?


 
Alexander Panov ©   (2005-06-07 20:16) [23]

Galiaf   (07.06.05 20:09) [22]
http://www.delphimaster.ru/cgi-bin/forum.pl?n=10


 
sniknik ©   (2005-06-07 20:22) [24]

> Кто поможет?
подними глаза, вверху страници список форумов видиш? нажми на KOL.

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



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

Текущий архив: 2005.06.29;
Скачать: CL | DM;

Наверх




Память: 0.52 MB
Время: 0.028 c
4-1115644993
MakedoneZ
2005-05-09 17:23
2005.06.29
Рисование не на форме.


3-1115878478
kyn66
2005-05-12 10:14
2005.06.29
Число десятичных знаков для поля в таблице Access?


4-1115265581
lokid7
2005-05-05 07:59
2005.06.29
CM_MOUSEENTER и WM_PAINT


11-1101734167
Anton_R
2004-11-29 16:16
2005.06.29
Большой размер до Minimize


14-1117699731
msguns
2005-06-02 12:08
2005.06.29
пос. Инской