Форум программистов «Весельчак У»
Добро пожаловать,
Гость
. Пожалуйста,
войдите
или
зарегистрируйтесь
.
Вам не пришло
письмо с кодом активации?
1 час
1 день
1 неделя
1 месяц
Навсегда
Рекомендуем проверить настройки временной зоны в вашем профиле (страница "Внешний вид форума", пункт "Часовой пояс:").
У нас больше нет рассылок. Если вам приходят письма от наших бывших рассылок mail.ru и subscribe.ru, то знайте, что это не мы рассылаем.
Начало
Наши сайты
Галерея
Весельчак У
Наша Вики
Хранилище
Проекты
Правила
Правила форума
Правила русского языка
Помощь
Поиск
Календарь
Почта
Войти
Регистрация
Форум программистов «Весельчак У»
>
Программирование
>
C/C++
(Модератор:
Вад
) > Тема:
Сборка мусора
Страниц: [
1
]
Вниз
« предыдущая тема
следующая тема »
Печать
Автор
Тема: Сборка мусора (Прочитано 6370 раз)
0 Пользователей и 1 Гость смотрят эту тему.
dr_allcom
Гость
Сборка мусора
«
:
11-11-2005 18:42 »
Объясните, желательно по простому, как это обычно реализуют. Может что-нибудь кто знает о интеллектуальных указателях, подскажите пожайлуста.
Записан
RXL
Технический
Администратор
Offline
Пол:
Re: Сборка мусора
«
Ответ #1 :
11-11-2005 19:26 »
В С/С++ такое не возможно в принципе - нет контроля за динамическими объектами. Можно реализовать только подобие, но проблемы останутся те же.
В языках, которых это реализовано, объект уничтожается, когда на него больше нет ссылок. Но можно и отложить уничтожение - это повышает производительность. Тогда, периодически, либо, когда не хватает памяти для создания очередного объекта, производится ревизия объектов и уничтожение неиспользуемых. Вот такой принцип и называется сборкой мусора. Т.е. отложенное удаление ненужных данных. Подобные методы применяют и при кешировании каких-либо данных в памяти.
Записан
... мы преодолеваем эту трудность без синтеза распределенных прототипов. (с) Жуков М.С.
Alf
Гость
Re: Сборка мусора
«
Ответ #2 :
11-11-2005 22:41 »
В действительности сборка мусора подразумевает не только уничтожение ненужных объектов, но и дефрагментацию высвобождающихся областей памяти, ибо фрагментация может стать тоже серьезной проблемой.
Объяснять детали реализации долго, да и ни к чему, поскольку тема актуальна и хорошо освещена в литературе. Например, в книге Джеффа Элджера "С++: библиотека программиста" примерно половина материала посвящена этим вопросам. Хотя, конечно, все эти доморощенные средства изрядно загромождают программу, рациональнее использовать более развитые языки, где сборка мусора встроена в исполняющую систему.
«
Последнее редактирование: 11-11-2005 22:49 от Alf
»
Записан
dr_allcom
Гость
Re: Сборка мусора
«
Ответ #3 :
14-11-2005 18:23 »
Спасибо!
Записан
Страниц: [
1
]
Вверх
Печать
« предыдущая тема
следующая тема »
Форум программистов «Весельчак У»
>
Программирование
>
C/C++
(Модератор:
Вад
) > Тема:
Сборка мусора
Загружается...