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

Вниз

Уменьшить использование памяти...   Найти похожие ветки 

 
blackgrin   (2003-06-02 23:07) [0]

Уважаемые мастера!
У меня есть процедура и в ней достаточно много переменых. Эта процедура Выполняется очень много раз(5-10 тысяч) и в следствии (я так полагаю этого) приложение при каждом обращении к этой процедуре загребает под себя еще определёный объем памяти. В итоге по свединиям винды приложение забрало 300-400 М ОЗУ :( Как сделать так, чтоб при обращении к процедуре не отгребался кусок памяти а просто брался постоянно один и перед каждым выполнением процедуры - обнулялся.
Заранее спасибо!


 
Endi ©   (2003-06-02 23:10) [1]

Попробуй сделать DLL с этой процедурой и далее в теле программы вызывать ее при начале использования и по окончании освобождая память от нее.


 
Xoy   (2003-06-02 23:16) [2]

попробуй сделать переменные глобальными


 
blackgrin   (2003-06-02 23:22) [3]

Endi, попробую...
Xoy, программа на 5 тыс. строк и там куча процедур, и я уверен что будут накладки вида одно имя переменой но разные типы. Эта мысль у меня появлялась уже ...


 
Юрий Зотов ©   (2003-06-02 23:37) [4]

> приложение при каждом обращении к этой процедуре загребает
> под себя еще определёный объем памяти...

...а после выхода из этой процедуры ровно такой же объем освобождает. Уж не говоря о том, что локальные переменные размещаются в заранее распределенном стеке, то есть дополнительной памяти не требуют.

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

А чтобы сказать точнее, нужно видеть код.



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

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

Наверх




Память: 0.47 MB
Время: 0.011 c
6-34949
SKR
2003-04-09 14:22
2003.06.12
какие пиковые нагрузки выдерживает TServerSocket???


14-35053
Till
2003-05-23 08:21
2003.06.12
MainMenu как в Офисе ХР


3-34666
mao
2003-05-18 07:59
2003.06.12
А всегда нужен BDE?


3-34757
Инна
2003-05-23 15:16
2003.06.12
output значения хп


7-35079
lipskiy
2003-04-07 01:06
2003.06.12
Как отличить, кто закрывает программу, юзер или винда?