Форум: "Основная";
Текущий архив: 2002.01.31;
Скачать: [xml.tar.bz2];
ВнизСводим к минимуму объем памяти, занимаемой программой Найти похожие ветки
← →
Vladimir Bolotin (2002-01-10 20:57) [0]Интересно было бы узнать Ваши методы оптимизации кода (м.б.
применение каких-либо специальных вынкций, выгрузка чего-либо
ненужного но загружаемого по умолчанию) в отношении минимизация
кол-ва памяти используемой Delphi-программой?
← →
Вадим (2002-01-10 21:13) [1]Любая программа под Вин с окном будет занимать в памяти > 1Mb
← →
evgeg (2002-01-11 00:04) [2]> Вадим
С какой это стати?
← →
Vladimir Bolotin (2002-01-11 00:37) [3]Да. с какой?
Более того это АБСОЛЮТНО не так..
Так что вопрос остается в силе!
← →
SergVlad (2002-01-11 00:54) [4]Intel C/C++
← →
Fellomena (2002-01-11 12:04) [5]>> Любая программа под Вин с окном будет занимать в памяти > 1Mb
Мне кажется, что имеется ввиду не физическая память (размер файла), а размер адрессного пространства, занимаемый программой в оперативной памяти.
Действительно, даже если вы сделаете на Delphi программу без формы типа:
...
uses Windows
begin
MessageBox(0, "Text", "Caption", 0);
end;
и запустив её посмотрите сколько она занимает в памяти, то будете удивленны (я была) она занимает там около 1.6 Mb (!!!)
Алексей Петров предположил, что 1 мегабайт съедается большим (по умолчанию в Delphi) размером стэка, но я установила его на минимум (65525 bt) и ничего не изменилось.
К примеру AVP монитор занимает около 700-800 kb.
Просто, как мне кажется, Borland в ущерб оптимизации кода сделал свой компилятор быстрым.
Кто работает на С++ знают, что скорость компилирования у C++ гораздо ниже чем у Delphi, но при этом код оптимизируется гораздо лучше.
У кого какие мысли ?
← →
NailS (2002-01-11 15:14) [6]ИМХО, все дело в длл-ях, используемых программой.
Например, ole32.dll, oleaut32.dll и иже с ними.
← →
Vladimir Bolotin (2002-01-11 21:58) [7]Да, и в нех тоже.
Например, если делать следующую выгрузку
{$IFDEF WIN32}
FreeLibrary(GetModuleHandle("OleAut32"));
{$ENDIF}
то можно высвободить определенное кол-во памяти.
Т.о. меня интересуют еще какие-либо способы оптимизации использования памяти.
А про СИшный компилятор все верно сказано. И вариант перехода на VC++ мне тоже понравился.. :-)
← →
evgeg (2002-01-11 22:30) [8]Виндовс 95.
Дельфи 2.
Проект - форма, на которой лежит кнопка
Размер exe - 181 248 b
Размер в памяти - 208.7 K
Yes Another Calculator
Размер exe - 23 040 b (один из самых маленьких калькуляторов по размеру exe, написан на
VC, использует mfc42.dll)
Размер в памяти - 1.5 M (!)
Измерено с помощью Memload 2.0.
Так что, господа и дамы, что-то вы путаете с 1 Mb.
← →
DK (2002-01-12 05:19) [9]2evgeg © (11.01.02 22:30)
Только один ньюанс:
Если вы на форму кинете Image1 и по клику на кнопке загрузите к примеру 2МБ Битмап, а потом глянете в MemLoad, то он вам покажет столько-же (???)
НТ-шный TaskManager показывает в данной ситуации использование памяти точнее.
Страницы: 1 вся ветка
Форум: "Основная";
Текущий архив: 2002.01.31;
Скачать: [xml.tar.bz2];
Память: 0.46 MB
Время: 0.004 c