Справочник функций

Ваш аккаунт

Войти через: 
Забыли пароль?
Регистрация
Информацию о новых материалах можно получать и без регистрации:

Почтовая рассылка

Подписчиков: -1
Последний выпуск: 19.06.2015

Как BCB "кушает" память?

1.9K
17 апреля 2003 года
OS17
40 / / 09.12.2002
Обратил внимание на одну вещь: при запуске программы оперативной памяти (и виртуальной) через Task Manager она жрет ну к примеру 18678 кб, после сворачивания главного окна и восстановления на экран это значение реально уменьшается (1785 кб), причем при последующем юзании до 18678 в принципе даже не доходит?
Интресно? Мне тоже.

Почему так?

Как сделать,чтобы изначально памяти было поменьше?
362
17 апреля 2003 года
_kolyan
339 / / 03.12.2002
Цитата:
Originally posted by OS17
Обратил внимание на одну вещь: при запуске программы оперативной памяти (и виртуальной) через Task Manager она жрет ну к примеру 18678 кб, после сворачивания главного окна и восстановления на экран это значение реально уменьшается (1785 кб), причем при последующем юзании до 18678 в принципе даже не доходит?



Я тоже такое заметил. Только про то что после восстановления окна расход памяти не доходит до прежнего высокого уровня, по-моему не совсем верно. Запусти компилляцию и посмотри - все вернется на свои места. Даже только при восстановлении окна расход памяти и то растет.
Обьясняется это просто, и билдер здесь не виноват. Просто при сворачивании окна система сбрасывает оперативную память приложения на диск, что бы дать чуть-чуть поработать другим программам :-)

1.9K
17 апреля 2003 года
OS17
40 / / 09.12.2002
Ха, я не зря написал в вопросе еще и при виртуальную память. Насколько я знаю - система сбрасывает "лишнюю" ОП на диск - и регистрирует ее именно как виртуальную?
А про сворачивания - стопудово память пропадает! (BCB6 WinXP) удивительно, но факт простая форма без компонентов (стандартная при загрузке BCB) после компиляции и запуска дает использования (Task Manager) 4844 кб , а после сворачивания - разварачивания - 724! Виртуальная же память при этом не страдает. Функциональость приложения не изменяется. Скорость выполнения запросов тоже. В принципе это не принципиально , но интересно понять!

Ну и кроме того: в настройках проекта есть замечательная возможность нкоторые формы не создавать автоматически при старте приложения, а стартовать их по требованию,типа:
TForm1 *Form1 = new TForm(this);
По идее это должно экономить память, но я почему-то такого не ощутил.
Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог