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

Вниз

"Out Of System Resourses".   Найти похожие ветки 

 
AlexanderMS ©   (2006-06-30 19:06) [0]

Ошибка во время выполнения моей программы. :( . Появляется при открытии окна "О программе", и то не всегда, но 2 раза уже заметил. Как с этим бороться?
Если посмотреть на её "аппетит" в Диспетчере задач, то он иногда приближается к отметке 10 МБ, а в основном - около 2500 КБ. Но это вроде бы цветочки, по сравнению с... Delphi!
Я думаю, не потому ли, что все тексты висят в памяти в виде переменных (всего около 1500-2000 символов, мне это необходимо (но не обязательно) для быстрого переключения программы с одного
языка на другой).

В окне Project -> Information следующие данные:

Data Size: 10625 bytes
Initial Stack Sze: 16384 bytes


 
Джо ©   (2006-06-30 19:06) [1]

Посмотри на кол-во используемых ресурсов GDI.


 
koha   (2006-06-30 19:16) [2]

Может быть у тебя много глобальных переменных типа integer - разнеси их по локальным процедурам.


 
koha   (2006-06-30 19:27) [3]

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


 
DrPass ©   (2006-06-30 19:35) [4]


> koha   (30.06.06 19:27) [3]

Наверное, учитель информатики тебя молчаливо ненавидит, но ничего не может сделать


 
Ega23 ©   (2006-06-30 19:37) [5]


> Может быть у тебя много глобальных переменных типа integer
> - разнеси их по локальным процедурам.


Ты, прежде чем отвечать, сначала задумайся - сколько же должно быть глобальных переменных типа Integer, чтобы вывалилось Out of System Resources?

По сабжу: буквально сегодня такое было. Но это IDE чудил.
Кстати, как ты её запускаешь: из-под отладчика?


 
Ega23 ©   (2006-06-30 19:37) [6]


> DrPass ©   (30.06.06 19:35) [4]


:)


 
koha   (2006-06-30 19:44) [7]

Сорррии не разобрал суть вопроса  "Out of System Resources" ......
Но это я про то пытался сказать как может прога 400 кб. занять процесс
аж 3 - 4 мб.


 
Ega23 ©   (2006-06-30 19:47) [8]


> Но это я про то пытался сказать как может прога 400 кб.
> занять процесс
> аж 3 - 4 мб.
>


А один фиг чушь сказал. Integer - 4 байта. 4Мб - 400Кб ~ 3,5Мб. Это примерно 700.000 переменных типа Integer.


 
koha   (2006-06-30 20:08) [9]

Вот про 4кб. - я согласен, тысячу инттежеров не нужно. достаточно одной переменной в ненужном месте и компилятор сам раздует вашу прогу ненужным кодом, если за одной переменной нужно через пару стеков в памяти лазить. Стоит попробывать пару Integer - ов потягать всеми процедурами которые есть и можно увидеть как она дуться будет, а затем убрать их -  прога заметно похудеет.
И это уже проверено неоднократно, но это относится не только Integer, но и к другим переменным тоже.


 
Desdechado ©   (2006-07-01 13:38) [10]

Есть подозрения, что создаваемые через .Create объекты нигде не уничтожаются. Особенно серьезно это может быть по части форм и объектов GDI, менее серьезно - от всяких массивов и списков.
Почитай книжки по динамическому созданию и уничтожению объектов.
Погоняй MemProof на предмет утечек ресурсов.



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

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

Наверх




Память: 0.49 MB
Время: 0.042 c
15-1150816031
UMU
2006-06-20 19:07
2006.07.23
ShareWare программы


2-1151932710
greenbegin
2006-07-03 17:18
2006.07.23
конвертация текста DOS - Win


3-1147629839
Моторин Алексей
2006-05-14 22:03
2006.07.23
Как Открыть базу DBF котороя использует инвертируемый индекс


15-1150177750
Ega23
2006-06-13 09:49
2006.07.23
С Днём рождения! 10 июня


15-1150800117
Megabyte
2006-06-20 14:41
2006.07.23
Преимущества/удобства использования Dll и BPL