Показать сообщение отдельно
Старый 08.12.2010, 20:00
inozemcev вне форума Посмотреть профиль Отправить личное сообщение для inozemcev Найти все сообщения от inozemcev
  № 14  
Ответить с цитированием
inozemcev
 
Аватар для inozemcev

блогер
Регистрация: Mar 2010
Адрес: x = stage.stageWidth/2 y= stage.stageHeight/2
Сообщений: 293
Записей в блоге: 2
Цитата:
Сообщение от terbooter Посмотреть сообщение
Почитал вспомнил про эти статьи, вот народ развлекается! =)

Следуйте рекомендациям адобе.
Используйте профайлер для контроля и поиска утечек.

И вам не понадобятся всякие подпольные рогатки
Еще бы написали: пишите как хотите и не парьтесь.

Во первых далеко не у все есть возможность и желание использовать flash builder.
Во вторых flash плеер действительно работает не очевидным образом.
Вы можете сделать все, чтобы тот или иной компонент был удален. Но для того, чтобы в этом убедится вы должны будете вызвать System.gc() . MemoryController был собран по мотивам блогов gscinner.com, написанных аж 2006 году и тогда еще такого метода в System не было и поэтому использовался хак, с классами LocalConnection. С тех пор изменилось совсем немного, если не считать библеотеки flash.sampler.

Однако даже благодаря ей вы до сих пор будете испытывать определенные трудности при попытке отследить утечки памяти.

Было бы правильно научить :
1 все EventDispatcher ы в один присест отписываться от событий.
2. объекты определять какое количество жестких ссылок связано с объектом и главное где были объявлены эти ссылки.
3. научить DisplayObject ы корректно уничтожаться (автоматически отсоединять себя и всех потомков, отписываться от событий, обнулять все жестские ссылки на себя и выпихивать их из массивов и кешей)