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

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

Версия для печати  Отправить по электронной почте    « Предыдущая тема | Следующая тема »  
Опции темы Опции просмотра
 
Создать новую тему Ответ
Старый 27.04.2010, 18:45
wvxvw вне форума Посмотреть профиль Отправить личное сообщение для wvxvw Найти все сообщения от wvxvw
  № 31  
Ответить с цитированием
wvxvw
Modus ponens
 
Аватар для wvxvw

модератор форума
Регистрация: Jul 2006
Адрес: #1=(list #1#)
Сообщений: 8,049
Записей в блоге: 38
Я думаю, что не все так однозначно, т.как для проверки необходимости отправки события прийдется затратить больше усилий, елси мы будем делать "точный" хиттест (т.е. с шейп флагами), а, если, например, заранее извесно, что все дети - прямоугольники, то, возможно, что отключив им mouseEnabled, и сделав более простой хиттест, мы получим лучший результат, чем при всплытии... Кроме того, всплывающие события создаются по-новой, таким образом, мы рискуем нарваться на GC во время этого процесса - и, раз на десять весь процесс вцелом будет изза этого гораздо дольше.
__________________
Hell is the possibility of sanity

Старый 27.04.2010, 18:49
BlooDHounD вне форума Посмотреть профиль Отправить личное сообщение для BlooDHounD Посетить домашнюю страницу BlooDHounD Найти все сообщения от BlooDHounD
  № 32  
Ответить с цитированием
BlooDHounD
стервочка (я мужик)
 
Аватар для BlooDHounD

блогер
Регистрация: Mar 2004
Адрес: Борисов
Сообщений: 3,161
Записей в блоге: 22
чего чего про GC? не понял.

Старый 27.04.2010, 18:58
Psycho Tiger вне форума Посмотреть профиль Отправить личное сообщение для Psycho Tiger Найти все сообщения от Psycho Tiger
  № 33  
Ответить с цитированием
Psycho Tiger
 
Аватар для Psycho Tiger

блогер
Регистрация: Jun 2005
Адрес: Toronto
Сообщений: 6,601
Записей в блоге: 17
Создавая новый объект мы рискуем вызвать GC, а он работает достаточно долго. Тем самым мы рискуем в какой-то момент времени сделать очень "дорогое" событие.

Старый 27.04.2010, 19:18
BlooDHounD вне форума Посмотреть профиль Отправить личное сообщение для BlooDHounD Посетить домашнюю страницу BlooDHounD Найти все сообщения от BlooDHounD
  № 34  
Ответить с цитированием
BlooDHounD
стервочка (я мужик)
 
Аватар для BlooDHounD

блогер
Регистрация: Mar 2004
Адрес: Борисов
Сообщений: 3,161
Записей в блоге: 22
Psycho Tiger, создавая новый объект мы ничем не рискуем. и пока вызов стэка не завершиться никакой GC ничего убивать не будет. и уж тем более объект, который передаётся в параметре. все события в ФП вызываются синхронно, и вообще не понимаю как GC может вообще возникнуть в такой ситуации. это типа если бы я гулял по центральному парку Нью-Йорка, и тут на меня из-за одинокого дерева БелАЗ выезжает. вероятности приблизительно равны.

Старый 27.04.2010, 19:40
Crenth вне форума Посмотреть профиль Отправить личное сообщение для Crenth Найти все сообщения от Crenth
  № 35  
Ответить с цитированием
Crenth
[+1 19.06.10]
[+1 27.07.10]
 
Аватар для Crenth

Регистрация: Aug 2009
Адрес: UTC+2
Сообщений: 353
на сколько я себе представляю модель событий DOM (не на уровне АС3, а на уровне логики ее работы), каждый раз когда возникает событие, диспетчер строит цепочку от корня до цели (последней ветки) и работает только с этой цепочкой. Это подтверждает тот факт, что удаление или добавление слушателя в тот момент, когда событие уже произошло и обрабатывается, не влияет на результат обработки события.

И делаю вывод такой: скорость работы схемы с подпиской слушателя на каждый объект будет такой же, как и с подпиской на родителя. Однако, она будет быстрее, чем если подписывается не родитель, а дед или прадед.

Старый 27.04.2010, 19:47
BlooDHounD вне форума Посмотреть профиль Отправить личное сообщение для BlooDHounD Посетить домашнюю страницу BlooDHounD Найти все сообщения от BlooDHounD
  № 36  
Ответить с цитированием
BlooDHounD
стервочка (я мужик)
 
Аватар для BlooDHounD

блогер
Регистрация: Mar 2004
Адрес: Борисов
Сообщений: 3,161
Записей в блоге: 22
Цитата:
Сообщение от Crenth Посмотреть сообщение
И делаю вывод такой: скорость работы схемы с подпиской слушателя на каждый объект будет такой же, как и с подпиской на родителя. Однако, она будет быстрее, чем если подписывается не родитель, а дед или прадед.
скажите пожалуйста, чем выделенная часть утверждения отличается по логике работы первой его половины?

Старый 27.04.2010, 20:09
Crenth вне форума Посмотреть профиль Отправить личное сообщение для Crenth Найти все сообщения от Crenth
  № 37  
Ответить с цитированием
Crenth
[+1 19.06.10]
[+1 27.07.10]
 
Аватар для Crenth

Регистрация: Aug 2009
Адрес: UTC+2
Сообщений: 353
веток больше, проход от корня к цели дольше. чо тут не понятно ?

Старый 27.04.2010, 20:10
arkadattx вне форума Посмотреть профиль Отправить личное сообщение для arkadattx Найти все сообщения от arkadattx
  № 38  
Ответить с цитированием
arkadattx

Регистрация: Apr 2010
Сообщений: 219
Извиняюсь, что встреваю, но ни у кого нет желания провести парочку тестов? А то я за этой темы слежу с момента ее создания, а времени с того момента прошло уже достаточно, а пока чуть ли не холивар...

Сделал бы и сам, но боюсь что мой код поднимут на смех...

Старый 27.04.2010, 20:11
Psycho Tiger вне форума Посмотреть профиль Отправить личное сообщение для Psycho Tiger Найти все сообщения от Psycho Tiger
  № 39  
Ответить с цитированием
Psycho Tiger
 
Аватар для Psycho Tiger

блогер
Регистрация: Jun 2005
Адрес: Toronto
Сообщений: 6,601
Записей в блоге: 17
Цитата:
Сообщение от BlooDHounD Посмотреть сообщение
Psycho Tiger, создавая новый объект мы ничем не рискуем. и пока вызов стэка не завершиться никакой GC ничего убивать не будет. и уж тем более объект, который передаётся в параметре. все события в ФП вызываются синхронно, и вообще не понимаю как GC может вообще возникнуть в такой ситуации. это типа если бы я гулял по центральному парку Нью-Йорка, и тут на меня из-за одинокого дерева БелАЗ выезжает. вероятности приблизительно равны.
Объект в параметре тут не причем. Речь шла о лёгком лаге.
Короче говоря:
Код AS3:
...
var i:uint=1000000;
while (i--) new Object();
...
//конец стека вызовов
//тут вызывается GC, собирая весь мусор.
В итоге, если GC не вызывается с таким кодом мы имеем стабильно, например, 30 фпс. Когда он вызовется GC фпс единожды упадет до 30-n, до следующего вызова GC.

Старый 27.04.2010, 20:33
BlooDHounD вне форума Посмотреть профиль Отправить личное сообщение для BlooDHounD Посетить домашнюю страницу BlooDHounD Найти все сообщения от BlooDHounD
  № 40  
Ответить с цитированием
BlooDHounD
стервочка (я мужик)
 
Аватар для BlooDHounD

блогер
Регистрация: Mar 2004
Адрес: Борисов
Сообщений: 3,161
Записей в блоге: 22
Crenth, а Вы о том, что чем ниже к предок тем позже вызовится событие? спасибо, КО. Вы не поверите, но именно в этом суть баблинга. было бы стрёмно, если бы события предков вызывались в вперемешку =) и разница в отклике в пару наносекунд, я думаю никого не волнует.

Psycho Tiger, а зачем Вы там будите вызывать GC?

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

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

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


 


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


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