![]() |
|
||||||||||
|
|||||
|
Регистрация: Mar 2010
Сообщений: 5
|
Есть объект, например
package { import flash.display.MovieClip; public class TestObj extends MovieClip { public function TestObj() { this.addEventListener(Event.ENTER_FRAME, TestFunct); } private function TestFunct(event:Event) { // что-то делаем } } } А потом удаляется Вопрос нужно ли удалять (removeEventListener) все события в объекте или в AS3 есть "сборщик мусора" и события удаляются вместе с объектами? Не только ENTER_FRAME, а клики и т.д. Последний раз редактировалось Stanq; 14.01.2011 в 23:29. |
|
|||||
|
ну, мышинные можно и не грохать, должны тереться сборщиком объекты, подписанные на них, если ссылок на них нет. а вот ентерфреймы, таймеры всяческие и твины лучше убивать и занулять
__________________
http://cleptoman.free-lance.ru achivements: дважды благословлен на воровство. осеяный благодатью |
|
|||||
|
Если я все правильно понимаю, если подписываться с useWeakReference=true, то все должно удаляться.
Но я не проверял. ![]()
__________________
Искренне Ваш, Джек. |
|
|||||
|
...
модератор форума
Регистрация: Sep 2006
Адрес: Minsk
Сообщений: 4,286
|
Сборщик мусора итак пометит объект для удаления. Но когда он его загребет - это не известно. Поэтому от enterFrame нужно вручную отписаться перед удалением объекта.
|
![]() |
![]() |
Часовой пояс GMT +4, время: 06:07. |
|
|
« Предыдущая тема | Следующая тема » |
|
|