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

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

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

блогер
Регистрация: Feb 2006
Сообщений: 1,474
Записей в блоге: 3
2TanaTiX
Обнаруживается стандартными средствами: трейсами, дебаггером, профайлером. Просто если выставлена мягкая ссылка - ты нажмешь run gc в профайлере и не увидишь что от чего-то не отписался.

А использовать или не использовать мягкие ссылки:
1. Eсть ситуации, в которых отследить время, в которое надо удалить объект из словаря или отписать от события определить очень тяжело (в сущности надо будет релизовать маленкий GC на базе подсчета ссылок). Тут выбора и нет. Например видел ресурсный движок, который не заморачивался с выгрузкой ресурсов, а просто хранил все в Dictionary с мягкими ссылками (да, доверия к такой системе нет - а вдруг он через 1 секунду удалит, а нам ресурс опять потребовался - и опять грузи, т.е. нельзя настроить чтобы удалял через 30 секунд, например, но работала).
Еще где-то в ASwing в каком-то менеджере компоненты пихаются в Dictionary со слабыми сылками. Там можно было от этого избавиться, но пришлось бы использовать совсем другой подход, т.е. можно считать у них не было выбора.

2. Большинство ситуаций не такие, в них ясно, когда отписывать объект. И тут просто 2 полюса:
- отписаться, но перестраховаться слабыми ссылками
- отписаться не перестраховываясь - если уж что-то идет не так - то это надо видеть
Просто тяготею больше ко 2-му полюсу и все.

3. Не отписываться и везде слабых ссылок понавтыкать.
Чревато нагрузкой на проц.

Старый 31.01.2012, 15:43
TanaTiX вне форума Посмотреть профиль Отправить личное сообщение для TanaTiX Найти все сообщения от TanaTiX
  № 22  
Ответить с цитированием
TanaTiX
 
Аватар для TanaTiX

блогер
Регистрация: Feb 2008
Сообщений: 1,453
Записей в блоге: 4
Цитата:
не увидишь что от чего-то не отписался
У меня отписывание от событий уже на автомате... Как и мягкие ссылки.
1) Как-то не было у меня таких ситуаций и таких структур проектов...
2) У нас разные полюса Соглашусь, что оба имеют право на жизнь.
3) Это даже не вариант.
__________________
Ну все, теперь Забава м-о-я.
Гы-гы, а корабль мой!

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

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

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


 


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


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