![]() |
|
||||||||||
|
|||||
|
Регистрация: Dec 2006
Адрес: Novosibirsk
Сообщений: 93
|
В CASALib, как я понял, по destroy() удаляются все ссылки на объект только в тех объектах, которые сами имплементят интерфейс IDestroyable. Т.е. если пользоваться только CasaSprite, CasaMovieClip, CasaLoader, Interval, DestroyableEventDispatcher и иже с ними, то все будет волшебно!
|
|
|||||
|
Lorem ipsum
|
А не проще провоцировать GC, вместо всего этого огорода? Вот например у silin-а есть http://silin.su/#AS3/utils/gc
__________________
Поймай яблоко 2! |
|
|||||
|
Регистрация: Dec 2006
Адрес: Novosibirsk
Сообщений: 93
|
Цитата:
|
|
|||||
|
Lorem ipsum
|
Да... тему увели в сторону и я забыл о корнях проблемы =)
А можно подробней описать ситуацию, при которой на один объект есть неконтролируемое количество ссылок?
__________________
Поймай яблоко 2! |
|
|||||
|
Регистрация: Dec 2006
Адрес: Novosibirsk
Сообщений: 93
|
Количество ссылок всегда контролируемое. Мы же создаем их сами. И обнулять должны тоже сами. Единственное исключение, насколько я знаю - Dictionary, GC на ссылки в Dictionary не обращает внимания.
|
|
|||||
|
Lorem ipsum
|
ну тогда проблемы как таковой нет — где плодим, там и следим за "исчезновением популяции"
![]()
__________________
Поймай яблоко 2! |
|
|||||
|
bebop, не верно.
У Dictionary есть ключ weakKeys, по типу weakReference у EventDispatcher::addEventListener, который как раз указывает, учитывать ли GC эти ссылки, или не учитывать. К тому же, простое зануление ссылки на объект не даёт гарантии того, что это дело удалится из памяти. Если использована чертовски высокая завязанность (например, когда есть объект а и объект б, у объекта а тыща ссылок на объект б, а у объекта б тыща ссылок на а, зануляем ссылки на а и на б, но не зануляем ссылки из а на б и из б на а) то GC вполне может запутаться и решить, что это дело чистить не надо. Это я к пользе методов "псевдодеструкторов".
__________________
Тут мужик танцует и поёт про флэш |
|
|||||
|
Регистрация: Dec 2006
Адрес: Novosibirsk
Сообщений: 93
|
Да, точно.
|
|
|||||
|
Регистрация: Jan 2009
Адрес: Петерсбург
Сообщений: 1,882
|
Цитата:
|
|
|||||
|
Регистрация: Dec 2006
Адрес: Novosibirsk
Сообщений: 93
|
Цитата:
![]() |
![]() |
![]() |
Часовой пояс GMT +4, время: 00:44. |
|
|
« Предыдущая тема | Следующая тема » |
|
|