![]() |
|
||||||||||
|
|||||||
|
|
« Предыдущая тема | Следующая тема » |
| Опции темы | Опции просмотра |
|
![]() |
![]() |
|
|||||
|
Регистрация: Jun 2011
Сообщений: 127
|
Как правильно удалить MovieClip, чтобы он исчез из памяти? Все-таки как это правильно делается? Я всегда в сомнениях по этому поводу. Вопрос к тем кто уже научился.
Есть звездочка, которая пролетает от одного угла экрана до другого. В ней есть слушатель события EnterFrame Когда звездочка выходит из области видимости, слушатель снимается, а она сама удаляется со сцены. 1) Если звездочка созданная внутри функции и ссылки на нее не осталось она удалится из памяти? Если нет то как ее правильно удались? 2) Если на этой же звездочке кроме слушателя события EnterFrame был еще слушатель MouseEvent.CLICK, который остался после удаления ее со сцены, то звездочка удалится из памяти? 3) Как правильно удалить эту же звездочку если у нее есть дочерние мувики на которых висят слушатели на клик мышкой? 4) Как удалить звездочку ссылка на которую имеется в программе? И еще есть ли какие-то средства отладки, которыми можно проверить что MovieClip полностью удален? |
|
|||||
|
1) через какое-то время, когда GC решит, что превышена допустимая планка.
2) удалится, но слушатель будет висеть в памяти 3) желательно убивать и слушатели у внутренних тоже. Но насколько мне известно, если на слушатель нет ссылке из-вне, то GC вполне может успешно почистить кольцевые ссылки. Однако, я бы рекомендовал "деструкторы" вручную писать 4) удалить из списка отображения и заNULLить ссылку Цитата:
__________________
тут я |
![]() |
![]() |
Часовой пояс GMT +4, время: 10:00. |
|
|
« Предыдущая тема | Следующая тема » |
|
|