![]() |
Объекты удалены, а профайлер показывает, что они еще висят в памяти?! :(
Значит структура классов такова, из Controller в UI_Connection, из UI_Connection в UI_NewGame, но вопрос чуток в другом.
Смотрю на примере Комбобоксов. "из Controller в UI_Connection" - их нету на рабочей области, профайлер показывает, что их действительно нету в памяти, - все ок. Потом "из UI_Connection в UI_NewGame" - появились на сцене 3 комбобокса, профайлер показывает, что они есть - все ок. потом вот что делается в классе "UI_NewGame" - там кнопочка при нажатии на которую осуществляется коннект и передается управление классу Constructor который все удаляет и создает новый обьект. НО! Все элементы интерфейса лежат в памяти. Почему? Вот структура класса - там ничего сложного посмотрите пож Код AS3:
Код AS3:
|
Очень много в коде лишнего. Почистите. Оставьте одно что-то, зачем все. Из-за этого так сразу и не видно - вы слушатели отписываете? А ссылки зануляете? А вообще, они так и будут висеть в памяти (если все сделано правильно), пока не придет товарищ GC.
|
Ну я так.. для наглядности, в смысле лишнего, вы имеете введу, что тяжело разобраться по сути?
Если по сути, то последние функции, создание комбобоксов ни к чему... Нет ссылки не зануляю, вот.. уже подсказали, делаю. Может че и получится после зануления. |
Да не тяжело, но это нужно не "пробежаться глазами", а именно "просмотреть", что отнимет больше времени. Да и большинству будет лень. От слушателей тоже отписывайтесь.
|
да, вот доделал, обнулил, запустил в конце GC результат таков же, - висит в памяти. :(
Напомню, структура такова. из Controller в UI_Connection, из UI_Connection в UI_NewGame, Из класса Controller Код AS3:
Код AS3:
UI_NewGame Код AS3:
да, от слушателей тоже отписываюсь, специально не ставил никакие слушатели на эти комбобоксы, чтоб на них проверить. |
А как же удалять из отображения кнопки и комбобоксы?
|
Вот, цикл в конструкторе делает
Код AS3:
|
А gc, может и вовсе не прийти, если флешка мало памяти съела.
|
все удаляет, только что проверял.
Хммм, ну как так тогда, элементы из сцены удалились, потом я их занулил, функция вызывается 100%! тоисть зануление делается, никакие события на комбобоксы не повешены. Я сейчас на другие элементы интерф не смотрю, так как главное чтоб один заработал, а остальные я сделаю. |
Нужно удалить не контейнеры с кнопками, а именно сами кнопки, потом занулить на них ссылки, потом удалить контейнеры, занулить ссылки на них. Вот тогда
|
| Часовой пояс GMT +4, время: 05:53. |
Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.