![]() |
Как грамотно убить мувик?
Как убить мувик, чтобы он исчез бесследно и не засорял память? При этом переменную, ссылающуюся на него, не удалять, а просто приравнять null.
|
Удалить его из дисплай листа и заnullить на него все ссылки.
Приравнивание ссылки к null равнозначно удалению этой самой ссылки, ровно как и приравнивание к какой-нибудь другой ссылки. Короче, если переменная перестал на него ссылаться по любой из причин - ссылка от этой переменной на него удалена. |
Да нефига, и диспетчер задач тому подтверждение, плеер грузит память как мула. И не ссылку надо удалить, а сам клип.
|
Да что вы? Считаете что null объект может грузить память? вы ошибаетесь. Тигра прально написал
|
Да я не против, но с каждым s=new mov(); память нагружается очередной сотней килобайт.
|
и будет нагружаться до тех пор, пока GC не соизволит ее почистить.
все тут верно написали. |
Цитата:
|
- удалить из дисплей листа
- обнулить все ссылки - удалить все евент листнеры - остановить таймеры И после этого объект удалится не мгновенно а только когда у виртуальной машины дойдут до этого руки. Если все условия выполнены, а флэшка продолжает жрать память, то надо запустить флэшбилдерпро и воспользоваться профайлером |
Вопрос в тему, а что если у мувика есть вложенные мувики? Их нужно каждый убивать или достаточно убить родительский мувик?
|
Достаточно убить родительский.
|
| Часовой пояс GMT +4, время: 04:58. |
Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.