Интернет магазин китайских планшетных компьютеров |
|
Компьютеры - Сборка мусора23 января 2011Оглавление: 1. Сборка мусора 2. Проблемы ручного управления памятью 3. Механизм сборки мусора 4. Требования к языку и системе 5. Проблемы использования 6. Достоинства и недостатки 7. Управление памятью в конкретных языках и системах В программировании сборка мусора одна из форм автоматического управления памятью. Специальный код, называемый сборщиком мусора, периодически освобождает память, удаляя объекты, которые уже не будут востребованы приложением то есть производит сборку мусора. ИсторияСборка мусора была впервые применена Джоном Маккарти в 1959 году в среде программирования на разработанном им функциональном языке программирования Лисп. Впоследствии она применялась в других системах программирования и языках, преимущественно в функциональных и логических. Необходимость сборки мусора в языках этих типов обусловлена тем, что структура таких языков делает крайне неудобным отслеживание времени жизни объектов в памяти и ручное управление ею. Широко используемые в этих языках списки и основанные на них сложные структуры данных во время работы программ постоянно создаются, надстраиваются, расширяются, копируются, и правильно определить момент удаления того или иного объекта затруднительно. В промышленных процедурных и объектных языках сборка мусора долго не использовалась. Предпочтение отдавалось ручному управлению памятью, как более эффективному и предсказуемому. Но со второй половины 1980-х годов технология сборки мусора стала использоваться и в директивных, и в объектных языках программирования, а со второй половины 1990-х годов всё большее число создаваемых языков и сред, ориентированных на прикладное программирование, включают механизм сборки мусора либо как единственный, либо как один из доступных механизмов управления динамической памятью. В настоящее время она используется в Oberon, Java, Python, Ruby, Perl, C#, D и других языках. Просмотров: 6351
|