![]() |
|
||||||||||
|
|||||||
|
|
« Предыдущая тема | Следующая тема » |
| Опции темы | Опции просмотра |
|
![]() |
![]() |
|
|||||
|
Привет. Расскажите пожалуйста как следует действовать в данной ситуации:
Т.е. при удалении спрайта-родителя (s), он все равно остается родителем чайлда (b). Т.е. на него сохраняется ссылка, равно как и на чайлда. Соостветственно GarbageCollector никогда не придет за ними. Получается, чтобы очистить память мне обязательно надо вручную присваивать null всем объектам? |
|
|||||
|
Modus ponens
|
Это надо тестить... но, по-идее - нет, не обязательно, т.как GC должен искать привязку к какому-нибудь топ-левел объекту, но на сколько хорошо он это делает - я не знаю...
__________________
Hell is the possibility of sanity |
|
|||||
|
[+1.3 31.10.08]
Регистрация: Sep 2008
Сообщений: 8
|
Что вы намеревались сделать строчкой " removeChild(s); " ?
И если на них больше не было других ссылок, то со временем оба уйдут с миром. |
|
|||||
|
Этой строкой я намеревался удалить родителя, а заодно и его детей. Но дальнейшая судьба объектов неизвестна.
Надо тестить? А как? System.gc() ничего не дает. А про привязку к топ-левел объекту не слышал. Везде пишут, что garbage collector подсчитывает количество ссылок, ну и проверяет, не ссылаются ли объекты друг на друга. |
|
|||||
|
а откуда вы собственно пытаетесь удалить s? если вы его еще никуда не добавили?
__________________
Кто может делать - делает, кто не может делать - учит, кто не может учить - управляет... |
|
|||||
|
Регистрация: Aug 2005
Сообщений: 1
|
Смотрите., собственно s удалился., а трейсите вы рут., т.е. вы я так понял создали спрайт в скрипте., поэтому он и не удаляется можете удалить - this.removeChild(b);
|
![]() |
![]() |
Часовой пояс GMT +4, время: 03:27. |
|
|
« Предыдущая тема | Следующая тема » |
|
|