Хорошо, если дочерние элементы не содержат ссылочную переменную или все дочерние ссылочные переменные установлены на нуль, то удаление родителя и установка родительской ссылки на ноль также удалит дочерние элементы из памяти. Но вы должны вручную удалить слушателя, подключенного ких.Использование слабых прослушивателей событий является преимущественным в большинстве ситуаций, так как они удаляются автоматически, когда объекты или фрагменты роликов удаляются сборщиком мусора, поэтому вам не нужно удалять их вручную.Вот небольшой пример, помогающий понять
var obj = new MainContainer();
obj.addEventListener(MouseEvent.CLICK, MainContainer_Clicked)
addChild(Obj)
Теперь удаление объекта Obj с помощью removeChild (obj) удалит его из рабочей области, но не из памяти.Вы должны установить obj=null
.И то же самое относится и к детям MainContainer, если он есть.Теперь вам нужно вручную удалить прослушиватель событий, прикрепленный к obj, таким образом
obj.removeEventListener(MouseEvent.CLICK, MainContainer_Clicked)
ИЛИ использовать слабый прослушиватель событий, если вы не хотите, чтобы он удалял себя вот так
obj.addEventListener(MouseEvent.CLICK, MainContainer_Clicked,false,0,true)
ЧтениеПодробнее о слабом слушателе событий здесь
http://gskinner.com/blog/archives/2006/07/as3_weakly_refe.html