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

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

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

блогер
Регистрация: Feb 2006
Сообщений: 1,474
Записей в блоге: 3
Цитата:
//не нравится, что каждый кадр перебираю вектор _myFuncVector
Вы в каждом кадре должны вызвать все функции (так же?)
А сам перебор (сравнение i <, инкремент i++, обращение к элементу массива) - ни как не больше времени и памяти жрёт чем непосредственный вызов всех функции Tick()
Т.е. это не место для оптимизаций.

Где место для оптимизаций? Это удаление функции могло бы быть, но у Вас просто нет такого метода

Цитата:
while (_funcCount--) {
_myFuncVector[_funcCount]();
}
_funcCount = _oldFuncCount;
Зачем так сложно? _Если_ не предпологается удаление функций, то не нужно поля использовать (да и если бы предполагалось - можно было бы переменными обойтись):
Код AS3:
for each (var fun:Function in _myFuncVector)
{
    fun();
}

Старый 08.02.2013, 18:45
Sintesis вне форума Посмотреть профиль Отправить личное сообщение для Sintesis Найти все сообщения от Sintesis
  № 2  
Ответить с цитированием
Sintesis
 
Аватар для Sintesis

Регистрация: Jul 2008
Сообщений: 912
Цитата:
Сообщение от expl Посмотреть сообщение
Вы в каждом кадре должны вызвать все функции (так же?)

Зачем так сложно?
Код AS3:
for each (var fun:Function in _myFuncVector)
{
    fun();
}
Да! Спасибо expl, совсем забыл про for each так красивей). Удаление функций тоже есть, просто не писал сюда, оно нормально работает. Думал, может, связанные списки делать, но оказывается это не такой уж и напряг когда цикл в энтерфрейме постоянно перебирает вектор с функциями.

Добавлено через 8 минут
Интересно, что быстрей такой подход как Frost47rus написал где будут через интерфейс дёргаться методы или как у меня с передачей всего метода в ентерфрейм или это совсем не важно что так, что так?

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

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

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


 


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


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