![]() |
|
||||||||||
|
|||||
|
Приветствую.
У меня в библиотеке куча различных клипов, которые состоят из других клипов и в некоторых из них находится анимация. Я беру клип из библиотеки, добавляю на сцену, потом удаляю клип. Анимация продолжает играть. Подержал так минут 5, анимация продолжает играть.(поставил специально в конце анимации трейс) 1. Клип вообще удалится? 2. Насколько это вообще накладно? На сцене могут побывать сотни таких объектов.и у каждого после удаления анимация играет. 3. Как то можно это остановить, кроме как через stop()? |
|
|||||
|
1. А куда MovieClip денется, если у вас всё ещё есть ссылки на него? GC его трогать не будет. (Вы же как-то проверяли проигрывание анимации).
2. Ну память однозначно жрётся, на счёт ЦП - надо тестить. У вас все карты. 3. А чем вас stop() не устраивает? Сделали stop(), убрали мувик со сцены, прикончили все ссылки. Не вижу проблем. |
|
|||||
|
1. проверял я трейсом, просто зашел в клип и в последний кадр трейс вписал. Разве это ссылка?. больше никаких привязок нет. Слушатель удаляющий этот клип привязан не к нему.
2. Почему память жрется? Объекты ведь не отображаются, соответственно никуда больше не залезут. Если только имеется ввиду что они не освободят память. Или я что то не так понимаю?. По цп я не заметил., собственно по этому и спрашиваю. Надо ли вообще что то делать. 3. не устраивает тем что клипы состоят из множества объектов(художник так делал), и в каждом объекте может быть анимация. т.е. я не знаю где в клипе анимация и сколько их. Можно конечно пройтись по потомкам и везде где кадров больше 1 поставить стоп. но мне почему то не нравится эта идея. |
|
|||||
|
1. Если бы у вас не было ссылок на объект, то у вас и объекта бы не было, т.к. его бы подобрал GC.
2. Да, имеется в виду то, что объекты будут лежать в памяти. 3. Унаследуйтесь от MovieClip, сделайте рекурсивный алгоритм, который будет бегать по всей вложенности всех детей и будет вам счастье. |
![]() |
![]() |
Часовой пояс GMT +4, время: 02:32. |
|
|
« Предыдущая тема | Следующая тема » |
|
|