![]() |
|
||||||||||
|
|
|
|||||
|
Регистрация: Sep 2011
Сообщений: 524
|
есть класс, показанный в виде экземпляра на экране. Он имеет внутреннюю сложную структуру. куча слушателей там. Да и сам класс переплетен многими событиями с другими объектами на сцене.
Прочитал что - даже если присвоить экземпляру null - то чтобы он освободили память надо отписать все слушатели. А попробуй их найти да ни один не забыть! это двинутся можно вообще. Подскажите реальную ситуацию - как это делелать лучшим способом? |
|
|||||
|
Написал подписку, сразу же напиши отписку. Вы в скобочках не путаетесь? Я вот сразу обе скобочки ставлю и потом меж ними пишу. Так и с событиями. Подписался, сразу напиши код который отпишется тогда когда это будет не нужно.
__________________
:) |
|
|||||
|
Регистрация: Sep 2011
Сообщений: 524
|
ничего пока не понял. есть объект. нужно удалить все внешние слушатели событий в которых он фигурирует?
|
|
|||||
|
Если объект подписался на прослушивание события у внешнего объекта (который не будет удален вместе с объектом) и передал ему в качестве слушателя свой метод (фактически дал ему ссылку на себя), то такую связь необходимо разорвать перед удалением (отписаться от события). Объекты слушающие события у удаляемого объекта не влияют на его доступность сборщику мусора, т.к. не имеют ссылки на него (если она не была создана намеренно).
__________________
משיח לא בא משיח גם לא מטלפן |
|
|||||
|
Регистрация: Sep 2011
Сообщений: 524
|
вот от подобных строк надо отписатся? если MyObgect - удаляемый объект?
п.с. а как проконтролировать - удалился ли объект или удаление не сработало из за оставшися слушателей? |
|
|||||
|
Регистрация: Sep 2011
Сообщений: 524
|
а не подскажете- как его запустить в builder?
|
![]() |
![]() |
Часовой пояс GMT +4, время: 21:27. |
|
|
« Предыдущая тема | Следующая тема » |
|
|