С Новым годом! Форум программистов, компьютерный форум, киберфорум
Pascal (Паскаль)
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.67/18: Рейтинг темы: голосов - 18, средняя оценка - 4.67
Singleberry
 Аватар для Николянус
2 / 2 / 0
Регистрация: 10.12.2017
Сообщений: 107

Как сделать очистку памяти

22.06.2019, 16:16. Показов 3341. Ответов 5
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Когда я запускаю свою пустую(ничего не делает) программу, то в диспетчере задач видно, что она занимает примерно 2 МБ памяти, а после очистки памяти с помощью сторонней программы моя программа занимает около 200 КБ.
Как сделать такую же очистку для своей программы, только с помощью кода в своей программе?

Пробовал делать GC.Collect() - ничем не помогает.

Не спрашивайье зачем мне это, просто интересно откуда берутся эти 1.8 МБ и как их убрать.

Вот моя пустая программа:

Pascal
1
2
3
4
5
6
7
{$apptype console}
 
program test; 
 
begin
    System.Console.ReadKey(true);
end.
0
Лучшие ответы (1)
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
22.06.2019, 16:16
Ответы с готовыми решениями:

Проверить равен ли 4-й бит байта [022A] единице. Если – да, то – программно сделать очистку памяти в адресах 0200-02DE, иначе – заполнить область памя
Проверить равен ли 4-й бит байта единице. Если – да, то – программно сделать очистку памяти в адресах 0200-02DE, иначе – заполнить область...

Как сделать очистку
Добрый вечер! Подскажите пожалуйста как сделать очистку на кнопке в С++? Для DataGridView и TextBox Какой код нужно использовать? ...

Как сделать очистку картинок
Опишу проблему по-подробнее. Если выбрать 1-е значение из listBox1, то в компонент imageItemSlider1 подгружаются фотографии, всё работает...

5
Администратор
Эксперт .NET
 Аватар для OwenGlendower
18253 / 14178 / 5366
Регистрация: 17.03.2014
Сообщений: 28,863
Записей в блоге: 1
22.06.2019, 17:22
Лучший ответ Сообщение было отмечено Николянус как решение

Решение

Николянус, вероятно т.н. "очистка" сводится к уменьшению размера working set процесса с помощью функции Windows API EmptyWorkingSet. На работающей программе данное действие несет больше вреда чем пользы т.к. удаленные из working set страницы все равно придется возвращать обратно.

Добавлено через 11 минут
Цитата Сообщение от Николянус Посмотреть сообщение
после очистки памяти с помощью сторонней программы
Кстати было бы неплохо озвучить название данной программы
1
Singleberry
 Аватар для Николянус
2 / 2 / 0
Регистрация: 10.12.2017
Сообщений: 107
22.06.2019, 20:30  [ТС]
Программой Advanced System Care 12.4 PRO в которой есть инструмент "Монитор" в котором есть кнопочка очищения ОЗУ
0
215 / 149 / 48
Регистрация: 28.12.2016
Сообщений: 716
28.06.2019, 12:08
Николянус, а смысл? Ваша программа занимает 200кб озу, win выделяет 2000кб дабы во время выполнения, когда потребуется еще использовать ОЗУ по мимо 200кб не было задержек. Если вы запустите какой-то процесс, который потребит всю память, то win будет забирать выделенное, но не используемое ОЗУ у всех программ, в том числе и у вашей.

Это проблема не в вашей программе, а так устроен win, он выделяет память не сколько потреляет софт, а с излишком, наверное тут есть свои подводные камни. Например на резервацию уходит n времени и программа выполняется дольше, чем зарезервировать заранее и в ходе выполнения заполнять ячейки памяти.
1
40 / 25 / 7
Регистрация: 04.10.2012
Сообщений: 127
14.08.2019, 15:39
Дело в том, что GC.Collect() вызывается не тогда, когда вы вызвали, а тогда когда ОС посчитала наиболее удобным моментом выполнения. Насколько я помню.
Но вы всё равно проверьте сами и прочитайте про сборщик мусора в доверенном источнике.
0
Эксперт .NET
 Аватар для kolorotur
17823 / 12973 / 3382
Регистрация: 17.09.2011
Сообщений: 21,261
15.08.2019, 10:52
Цитата Сообщение от Dam33 Посмотреть сообщение
GC.Collect() вызывается не тогда, когда вы вызвали, а тогда когда ОС посчитала наиболее удобным моментом выполнения.
Документация с вами не согласна:
Forces an immediate garbage collection of all generations.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
15.08.2019, 10:52
Помогаю со студенческими работами здесь

Не могу найти код , и как сделать очистку ?
как сделать так чтобы когда я пишу в edit3 и нажимаю добавить она появилась в edit2

Подскажите как сделать очистку формы после отправки
Всем привет ! Подскажите как сделать очистку формы после отправки. Скрипт рабочий закрывает окно фенси. А простая форма на страничке не...

Как сделать очистку и запись прокси в браузерах Google Chrome, Opera, Mozilla?
Доброе утро! помогите пожалуйста! Имеются настройки прокси в браузерах Гугл Хром Опера Мозила, нужно сделать их очистку записать новые...

Как сделать очистку Edit2 после вывода решения, чтобы ввести новое число? (См. внутри)
procedure TForm1.Edit2Change(Sender: TObject); begin p:=3; r:= strtofloat (edit1.Text); a:= strtoint (edit2.Text); case a of 1:...

Необходимо сделать очистку таблиц с подтверждением
Здравствуйте, у меня похожая задача, чтобы не плодить одинаковые темы напишу здесь. Необходимо сделать очистку таблиц с подтверждением....


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
6
Ответ Создать тему
Новые блоги и статьи
Восстановить юзерскрипты Greasemonkey из бэкапа браузера
damix 15.01.2026
Если восстановить из бэкапа профиль Firefox после переустановки винды, то список юзерскриптов в Greasemonkey будет пустым. Но восстановить их можно так. Для этого понадобится консольная утилита. . .
Изучаю kubernetes
lagorue 13.01.2026
А пригодятся-ли мне знания kubernetes в России?
Сукцессия микоризы: основная теория в виде двух уравнений.
anaschu 11.01.2026
https:/ / rutube. ru/ video/ 7a537f578d808e67a3c6fd818a44a5c4/
WordPad для Windows 11
Jel 10.01.2026
WordPad для Windows 11 — это приложение, которое восстанавливает классический текстовый редактор WordPad в операционной системе Windows 11. После того как Microsoft исключила WordPad из. . .
Classic Notepad for Windows 11
Jel 10.01.2026
Old Classic Notepad for Windows 11 Приложение для Windows 11, позволяющее пользователям вернуть классическую версию текстового редактора «Блокнот» из Windows 10. Программа предоставляет более. . .
Почему дизайн решает?
Neotwalker 09.01.2026
В современном мире, где конкуренция за внимание потребителя достигла пика, дизайн становится мощным инструментом для успеха бренда. Это не просто красивый внешний вид продукта или сайта — это. . .
Модель микоризы: классовый агентный подход 3
anaschu 06.01.2026
aa0a7f55b50dd51c5ec569d2d10c54f6/ O1rJuneU_ls https:/ / vkvideo. ru/ video-115721503_456239114
Owen Logic: О недопустимости использования связки «аналоговый ПИД» + RegKZR
ФедосеевПавел 06.01.2026
Owen Logic: О недопустимости использования связки «аналоговый ПИД» + RegKZR ВВЕДЕНИЕ Введу сокращения: аналоговый ПИД — ПИД регулятор с управляющим выходом в виде числа в диапазоне от 0% до. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru