|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
|
Опции темы | Поиск в этой теме |
23.05.2009, 20:40 | #1 |
Старожил
Регистрация: 05.06.2008
Сообщений: 4,206
|
Перебор с памятью
Добрый вечер! . Заканчиваю я работу со своей курсовой, но обнаружил тут проблему. Вообщем, у меня под мою программу выделяется слишком много памяти. Аж почти 90 (!) Mb. Сам exe-шник имеет размер ~ 2.00Mb. В чем причина такого выделения памяти? На что ее столько выделяется и как решить эту проблему?
Не стоит смеяться над человеком делающим шаг назад, возможно он делает разбег.
|
23.05.2009, 20:48 | #2 |
Trust no one.
Старожил
Регистрация: 07.04.2009
Сообщений: 6,526
|
Причин может быть несколько. Если программа использует много графических объектов то заполнение памяти будет достаточно большим. Если используются TBitMap`ы, то почаще используй .Free Попробуй уменьшить количество переменных (Особенно массивов) или в нескольких местах программы используй запись всех данных хотя бы в текстовик и очисть память от переменных.
SQUARY PROJECT - НАБОР БЕСПЛАТНЫХ ПРОГРАММ ДЛЯ РАБОЧЕГО СТОЛА.
МОЙ БЛОГ GRAY FUR FRAMEWORK - УДОБНАЯ И БЫСТРАЯ РАЗРАБОТКА WINAPI ПРИЛОЖЕНИЙ |
23.05.2009, 20:50 | #3 | |
Старожил
Регистрация: 05.06.2008
Сообщений: 4,206
|
Цитата:
Не стоит смеяться над человеком делающим шаг назад, возможно он делает разбег.
|
|
23.05.2009, 20:52 | #4 |
Trust no one.
Старожил
Регистрация: 07.04.2009
Сообщений: 6,526
|
Значит так:
Pikcha:=TBitMap.Create; Pikcha.LoadFromFile('путь'); Image1.Canvas.Draw(X,Y,Pikcha); А после того, как она нам больше не нужна: Pikcha.Free; - очистили память
SQUARY PROJECT - НАБОР БЕСПЛАТНЫХ ПРОГРАММ ДЛЯ РАБОЧЕГО СТОЛА.
МОЙ БЛОГ GRAY FUR FRAMEWORK - УДОБНАЯ И БЫСТРАЯ РАЗРАБОТКА WINAPI ПРИЛОЖЕНИЙ |
23.05.2009, 21:05 | #5 |
Старожил
Регистрация: 05.06.2008
Сообщений: 4,206
|
Ааа...Но у меня-то картинки не загружаются во время работы программы. У меня битмапы есть тока на спидбутонах и имейджах.
Не стоит смеяться над человеком делающим шаг назад, возможно он делает разбег.
|
23.05.2009, 21:07 | #6 |
Trust no one.
Старожил
Регистрация: 07.04.2009
Сообщений: 6,526
|
Попробуй стереть изображения на форме и загружать их после запуска. Так уменьшится объем EXEи возможно (хотя неуверен) память. Но акцент все-таки сделай на уменьшении количества массивных переменных.
SQUARY PROJECT - НАБОР БЕСПЛАТНЫХ ПРОГРАММ ДЛЯ РАБОЧЕГО СТОЛА.
МОЙ БЛОГ GRAY FUR FRAMEWORK - УДОБНАЯ И БЫСТРАЯ РАЗРАБОТКА WINAPI ПРИЛОЖЕНИЙ |
23.05.2009, 21:14 | #7 | |
Старожил
Регистрация: 05.06.2008
Сообщений: 4,206
|
Я че т не могу понять, что это значит:
Цитата:
Не стоит смеяться над человеком делающим шаг назад, возможно он делает разбег.
|
|
23.05.2009, 21:24 | #8 |
Форумчанин
Регистрация: 04.11.2007
Сообщений: 117
|
artemavd
Ты скажи вообще, что программа делает, а то ответа просто можешь не получить.
Перед тем, как выложить код, я его всегда проверяю.
Если помог - тыкни на на весы слева, под аватарой. |
23.05.2009, 21:25 | #9 |
*
Старожил
Регистрация: 22.11.2006
Сообщений: 9,201
|
Посчитайте суммарный объем ваших битмапов.
Потом преобразуйте их в JPG и сравните суммарный объем в этом случае. Вариант - используйте вместо битмапов JPG-ки. В качестве потеряете чуть-чуть, зато в объеме выиграете значительно... Заодно проверьте, не дублируется ли процесс загрузки картинок. |
23.05.2009, 21:35 | #10 |
Старожил
Регистрация: 05.06.2008
Сообщений: 4,206
|
Хантер, программа делает обсчёт учебного процесса по показателям. Михалыч, не поверите, но максимальный объём всех битмапов не больше 150 кб. Это точно. У меня приличное количество раз повторяются битмапы на кнопках. P.S. Рад снова Вас, Михалыч, видеть на форуме после столь долгого отсутствия:-)
Не стоит смеяться над человеком делающим шаг назад, возможно он делает разбег.
|
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
перебор файлов | Ralf_ru | Общие вопросы Delphi | 11 | 31.03.2009 14:23 |
Управление памятью | Raz0r | Помощь студентам | 4 | 02.03.2009 18:42 |
Управление памятью | ilham | Операционные системы общие вопросы | 2 | 17.12.2008 18:29 |
Проблема с памятью в С++ | rJIaBkoM | Помощь студентам | 1 | 14.06.2008 14:25 |
Работа с памятью | Shurik Hacker | Общие вопросы Delphi | 7 | 22.06.2007 20:51 |