Форум Flasher.ru
Ближайшие курсы в Школе RealTime
Список интенсивных курсов: [см.]  
  
Специальные предложения: [см.]  
  
 
Блоги Правила Справка Пользователи Календарь Поиск рулит! Сообщения за день Все разделы прочитаны
 

Вернуться   Форум Flasher.ru > Flash > Flex

Версия для печати  Отправить по электронной почте    « Предыдущая тема | Следующая тема »  
Опции темы Опции просмотра
 
Создать новую тему Ответ
Старый 22.05.2009, 17:15
Vasyaga вне форума Посмотреть профиль Отправить личное сообщение для Vasyaga Найти все сообщения от Vasyaga
  № 1  
Ответить с цитированием
Vasyaga

Регистрация: Feb 2009
Адрес: WS
Сообщений: 93
Cool Ловим утечки памяти

Попробовал создать галерею с использованием Flex. Хотелось создать именно при помощи компонентов Flex Framework (AS+MXML). Основная идея была грузить данные из XML, затем генерировать слайды (VBox) и заполнять ими Canvas. После определённого интервала времени я смещал картинки, проверял и удалял методом removeChild те, которые уже не видны, затем добавлял новые итд. И вроде всё нормально, крутится, но! Случайно оставил приложение запущенным на часок, а когда пришел, то обнаружил дикие тормоза. Моя галерея усиленно отжирала куски памяти! Стал проверять, избавился ото всех жестких ссылок, удалял все ненужные eventListener-ы, да и добавлял их как weak-ссылки и.т.д. Пробовал даже в профайлере запускать сборщик мусора вручную - бесполезно. Память всё равно отъедается. Впечатление такое, что где-то остаются ссылки на удалённые картинки.
Кто сталкивался и что делать? Понимаю, что писать галерею лучше на чистом AS3 без Flex-компонентов, но уж очень хочется в показательно-образовательных целях. Выходит, что сборщик мусора у FlashPlayer такой кривой? В общем, поделитесь опытом!

Старый 22.05.2009, 19:38
etc вне форума Посмотреть профиль Найти все сообщения от etc
  № 2  
Ответить с цитированием
etc
Et cetera
 
Аватар для etc

Регистрация: Sep 2002
Сообщений: 30,784
Выходит, что у Flex-фреймворка есть проблемы с памятью.

Старый 22.05.2009, 20:36
Vasyaga вне форума Посмотреть профиль Отправить личное сообщение для Vasyaga Найти все сообщения от Vasyaga
  № 3  
Ответить с цитированием
Vasyaga

Регистрация: Feb 2009
Адрес: WS
Сообщений: 93
__etc, вы это утверждаете? В смысле, есть подтвержденные данные, что память действительно съедается? Может всё-таки как-то можно это обойти?

Старый 23.05.2009, 03:24
wvxvw вне форума Посмотреть профиль Отправить личное сообщение для wvxvw Найти все сообщения от wvxvw
  № 4  
Ответить с цитированием
wvxvw
Modus ponens
 
Аватар для wvxvw

модератор форума
Регистрация: Jul 2006
Адрес: #1=(list #1#)
Сообщений: 8,049
Записей в блоге: 38
Если где-то забиндили картинки в MXML или добавили слушателей через MXML, прямо или косвенно - можно с памятью попрощаться
А вообще, не знаю, попробуйте разные СДК, это время от времени пытаются пофиксить...

По этому поводу могу только порекомендовать проголосавать за этот тикет...
http://bugs.adobe.com/jira/browse/SDK-20636
косвенно он относится и к вашей проблеме (невозможно удалить слушатель назначеный используя MXML)
В качестве quick-and-dirty fix можно попробовать что-нибудь такое:
http://code.google.com/p/e4xu/source.../MXMLHelper.as
но, если по чесному, это маразм... нужно, чтобы MXML нормально компилировался, а не придумывать кривые заплатки врезультате чужих кривых решений...
__________________
Hell is the possibility of sanity

Старый 23.05.2009, 10:25
Vasyaga вне форума Посмотреть профиль Отправить личное сообщение для Vasyaga Найти все сообщения от Vasyaga
  № 5  
Ответить с цитированием
Vasyaga

Регистрация: Feb 2009
Адрес: WS
Сообщений: 93
wvxvw - согласен, полный маразм. Adobe позиционирует Flex framework как основу для Enterprise платформы и в то же время такие явные баги! Спасибо за полезные ссылки, попробую всё !

Старый 23.05.2009, 11:34
etc вне форума Посмотреть профиль Найти все сообщения от etc
  № 6  
Ответить с цитированием
etc
Et cetera
 
Аватар для etc

Регистрация: Sep 2002
Сообщений: 30,784
Цитата:
Сообщение от Vasyaga Посмотреть сообщение
__etc, вы это утверждаете? В смысле, есть подтвержденные данные, что память действительно съедается? Может всё-таки как-то можно это обойти?
Я не знаю, я не пользуюсь этим фреймворком. То, что он «утекает», я не удивлен.

Старый 23.05.2009, 11:45
Vasyaga вне форума Посмотреть профиль Отправить личное сообщение для Vasyaga Найти все сообщения от Vasyaga
  № 7  
Ответить с цитированием
Vasyaga

Регистрация: Feb 2009
Адрес: WS
Сообщений: 93
Цитата:
Сообщение от __etc Посмотреть сообщение
Я не знаю, я не пользуюсь этим фреймворком. То, что он «утекает», я не удивлен.
Да, грустная история, тем более для коммерческого продукта. Спасибо за ответ.
Немного оффтопа: а какая тогда есть альтернатива Flex framework? Не могли бы поделиться ссылками? Заранее спасибо.

Старый 23.05.2009, 11:47
etc вне форума Посмотреть профиль Найти все сообщения от etc
  № 8  
Ответить с цитированием
etc
Et cetera
 
Аватар для etc

Регистрация: Sep 2002
Сообщений: 30,784
Цитата:
Сообщение от Vasyaga Посмотреть сообщение
Немного оффтопа: а какая тогда есть альтернатива Flex framework? Не могли бы поделиться ссылками? Заранее спасибо.
Собственный фреймворк

Старый 23.05.2009, 11:54
Vasyaga вне форума Посмотреть профиль Отправить личное сообщение для Vasyaga Найти все сообщения от Vasyaga
  № 9  
Ответить с цитированием
Vasyaga

Регистрация: Feb 2009
Адрес: WS
Сообщений: 93
Цитата:
Сообщение от __etc Посмотреть сообщение
Собственный фреймворк
Понял, буду копать дальше (или тоже разрабатывать свой фреймворк). Спасибо!

Старый 07.12.2010, 19:30
kemsky вне форума Посмотреть профиль Отправить личное сообщение для kemsky Найти все сообщения от kemsky
  № 10  
Ответить с цитированием
kemsky

Регистрация: Dec 2010
Сообщений: 10
Записей в блоге: 1
если тема все еще актуальна, кое-что пишу об этом http://compile4fun.wordpress.com/

Создать новую тему Ответ Часовой пояс GMT +4, время: 13:03.
Быстрый переход
  « Предыдущая тема | Следующая тема »  

Теги
garbage collector , profiler , память
Опции темы
Опции просмотра

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.


 


Часовой пояс GMT +4, время: 13:03.


Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2024, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.