#flash #garbage-collection #air
#flash #сбор мусора #air
Вопрос:
Кто-нибудь может рассказать мне, как работает сборщик мусора Flash Player, пожалуйста? Не беспокойтесь о версии, даже если вы расскажете мне о GC во Flash Player 8.0, 9.0 или 10.0, это не имеет значения.
Многие статьи в Adobe Connection просто рассказывают о тех же старых вещах: деревьях, счетчиках и неопределенности времени освобождения… все, что мы знаем….
Но как насчет политик освобождения? Существуют ли пулы, подобные CLR в .NET (хорошо объясненные в MSDN), или какой-либо другой конкретный подход? Меня интересуют алгоритмы…
Спасибо.
Ответ №1:
Короче говоря, Flash Player (по крайней мере, до версии 11.2) будет:
- Отметьте объекты развертки на основе любых сильных ссылок
- Ссылки отслеживаются с помощью DRC (отложенный подсчет ссылок)
Лучшая статья, которую я нашел, была в блоге JPauclair, в котором подробно рассказывается:http://jpauclair.net/2009/12/23/tamarin-part-iii-current-garbage-collector-in-flash-10-0 /
Внизу он перечисляет несколько дополнительных ссылок / источников, включая серию из 3 частей Гранта Скиннера.
Ответ №2:
Грант Скиннер написал несколько хороших статей по сборке мусора и управлению ресурсами. Вы можете найти их здесь
Комментарии:
1. Да, эти статьи были полезными, я их прочитал, но все же предоставил лишь несколько подробностей… подсчет ссылок, разметка развертки и отложенное освобождение памяти с небольшим примечанием об эвристике в памяти … это все??? Ссылки на CLR GC в .NET очень точны и подробно объясняют, как это работает, какие алгоритмы используются и какие политики и стратегии рассматриваются…