Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   ActionScript 3.0 (http://www.flasher.ru/forum/forumdisplay.php?f=83)
-   -   Снова вопрос о быстродействии (http://www.flasher.ru/forum/showthread.php?t=173855)

windrunner31 12.01.2012 20:08

Снова вопрос о быстродействии
 
Итак.
Можно ли такое делать?
Код AS3:

function test():MovieClip {
mv = new MovieClip()
return mv;
}
 
var t = test();
stage.addChild(t);
stage.removeChild(t)
t = null

Корректно ли очиститься этот обьект с помощью gc?Просто я перешел на as3 с кривоватого языка,так вот,он коряво обнулял возращаемые обьекты,и там приходилось не использовать это вообще,а как дела обстоят с этим в as3?

GBee 12.01.2012 20:18

Если работает, значит можно. Но еще бы переменным тип задавать.

windrunner31 12.01.2012 20:50

Забыл=)Спасибо,тогда еще один вопрос,как лучше:
1)Использовать EventDispatcher'ы и подписываться на события.
2)Сохранять в класс функцию и с нею работать.
3)Другой вариант...(Озвучить)
?

goodguy 12.01.2012 20:55

А это равнозначные варианты? Oo

Что лучше, кофе или апельсин?

GBee 12.01.2012 21:21

Апельсин полезней.

Видимо автор хотел устроить очередной спор "события против колбеков" :о)).

windrunner31 12.01.2012 22:00

Хотел не спор устроить,а узнать,что из них быстрей?
Не глядя на удобность.

Art_133 12.01.2012 22:08

В офф документации по оптимизации приложений от Adobe рекомендуют использовать коллбеки.

artcraft 12.01.2012 22:46

коллбэки безусловно быстрее, но события гораздо более мощный инструмент.
кстати, подписка на событие это и есть коллбэк.

есть еще сигналы, они бысртее чем родные события, но самую малость уступают им по количеству плюшек

goodguy 12.01.2012 22:46

Цитата:

В офф документации по оптимизации приложений от Adobe рекомендуют использовать коллбеки.
пруф в студию

artcraft 12.01.2012 23:12

Цитата:

Сообщение от goodguy (Сообщение 1056436)
пруф в студию

коллбэк это когда в качестве аргумента предаётся функция которую надо будет потом вызвать

например класс A хочет чтобы класс В сообщил ему когда пользователь кликнет на В

коллбэком это реализуется так
Код:

_b.onClick = _a.doSomething;
когда класс В поймёт что его кликнули он вызовет функцию записанную в переменной onClick

с событиями всё сложнее:
класс В понятия не имеет об А
класс А приходит к классу В и "оформляет подписку" на событие оставляя свой обратный адрес - функцию которая обработает событие.
когда В поймёт что его кликнули, он отправляет посылку (событие), упаковав в неё данные о клике, и не забыв указать на коробке обратный адрес.
класс А получает посылку и распаковывает её.

безусловно создание/удаление посылки будет медленнее чем прямой вызов функции


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

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