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

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

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

блогер
Регистрация: Jun 2005
Адрес: Toronto
Сообщений: 6,601
Записей в блоге: 17
Я не буду вызывать, он сам =). wxvxw об этом и писал:
Цитата:
Кроме того, всплывающие события создаются по-новой, таким образом, мы рискуем нарваться на GC во время этого процесса - и, раз на десять весь процесс вцелом будет изза этого гораздо дольше.
Не во время, конечно, но после конца стека вызовов есть шанс, что GC сработает, потому что он так решит, что вызовет лаг.

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

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

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

блогер
Регистрация: Jun 2005
Адрес: Toronto
Сообщений: 6,601
Записей в блоге: 17
Ну да, прав. Хотя если по событию вроде MOUSE_MOVE "всплывать" событие и постоянно теребить мышкой - в принципе можно эти килограммы памяти и получить. Один хрен смотреть надо по ситуации.

Вообще я никогда не сталкивался с проблемой GC, проблему нафантазировал с подачи wxvxw чтобы в будущем знать, что делать. Видимо, проблема высосана из пальца. Спасибо.

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

блогер
Регистрация: Mar 2008
Адрес: РФ, Санкт-Петербург
Сообщений: 2,272
Записей в блоге: 5
Отправить сообщение для gloomyBrain с помощью ICQ Отправить сообщение для gloomyBrain с помощью Skype™
Цитата:
роблему нафантазировал с подачи wxvxw чтобы в будущем знать, что делать. Видимо, проблема высосана из пальца. Спасибо.
Ну, почти отмазался =)
__________________
...вселенская грусть

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

блогер
Регистрация: Jun 2005
Адрес: Toronto
Сообщений: 6,601
Записей в блоге: 17
А толку мазаться? Если я в каких-то суждениях заблуждаюсь и мне об этом говорят - это очень хорошо.

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

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

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

модератор форума
Регистрация: Jul 2006
Адрес: #1=(list #1#)
Сообщений: 8,049
Записей в блоге: 38
Цитата:
Сообщение от BlooDHounD Посмотреть сообщение
Psycho Tiger, создавая новый объект мы ничем не рискуем. и пока вызов стэка не завершиться никакой GC ничего убивать не будет. и уж тем более объект, который передаётся в параметре. все события в ФП вызываются синхронно, и вообще не понимаю как GC может вообще возникнуть в такой ситуации. это типа если бы я гулял по центральному парку Нью-Йорка, и тут на меня из-за одинокого дерева БелАЗ выезжает. вероятности приблизительно равны.
А какая разница когда? от того, что лаг будет не сию секунду, а через полсекунды тебе легче станет? Лаг то все равно будет.
И да, GC вполне может включится если будет много событий диспатчится и соответственно удалятся - от чего бы не включится, их же кто-то должен убирать?
Т.е. традиционно, большую часть времени занимает отрисовка (а не наши банальные скрипты), но если изза сборщика мусора ты не успел к плановому апдейту - ты увидишь лаг, т.е. если в это время играет какая-то анимация, то она тормознет.
Да и вообще, не об этом была речь, даже если предположить, что сборщик мусора работает очень быстро, то вполне есть шанс, что в определенной ситуации можно придумать решение которое будет более еффективным чем "точный" хиттест который должен сделать плеер, чтобы определить диспатчить ли событие кому-то или нет. Как я уже говорил, если хиттестить надо квадратики, или заведомо не пересекающиеся фигуры или круги, то тут просто напрашивается не подписываться на всплытие, а выявление цели (целей) использовав упрощенный алгоритм.
__________________
Hell is the possibility of sanity

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

блогер
Регистрация: Jun 2005
Адрес: Toronto
Сообщений: 6,601
Записей в блоге: 17
Да, wvxvw сказал сейчас примерно мои мысли =)

BlooDHounD, насколько мне известно GC не убирается по мелочам, она ленива. Пусть минуту не будет лага, но потом когда события наплодят килограмм она включится лаг будет.

Вообще уже считаю что разговор идёт в тупик. Надо всегда смотреть по ситуации и не иметь шаблонов в голове.

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

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

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

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

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

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

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


 


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


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