Показать сообщение отдельно
Старый 30.11.2005, 15:17
john вне форума Посмотреть профиль Отправить личное сообщение для john Посетить домашнюю страницу john Найти все сообщения от john
  № 18  
Ответить с цитированием
john
МЕГАФЛЭШЕР

Регистрация: May 1999
Адрес: Россия, Москва
Сообщений: 1,181
2silin, а ты оказывается тяжелый....
был вопрос - "где производительность?"
были примеры где она реально видна, ты сказал что пример плох - медленно все это "драгается", то есть опять же на производительность жалуешься, был вариант решения - кеширование или битмап. Естественно никто не предлагает переносить рендеринг на клиент - это по меньшей мере бред, хтя в некоторых случаях возможно и в применимо - например в простых "бродилках".

вернусь к производительности.

главный источник прироста производительности - использование примитивных типов, и готовых решений реализованных на уровне плеера.
несколько тип-энд-триксов:

1. не исползовать Numbet - а использовать int и uint
2. при создании строк почаще использовать StringBuilder (когда нужно создать строку из несколько кусков).
3. почаще использовать ByteArray, а не массив интов и боже упаси намберов (ну это при разборе битмапов и звука)
4. использовать рег-экспы а не писать собственные методы поиска в строках (спорно, но я уверен что низкоуровневый механизм регекспов будет в любом случае быстрее).
5. при работе с BitmapData не рисовать попиксельно на экран, а сначала создать "виртуальную" картинку а потом нарисовать ее с помощью copyPixels.
6. пользоваться кешированием битмапов и метдами оптимизации отображения графики.

два последних относятся к графическому движку, то есть так же и к восьмерке - движок то в восемь с половинкой восьмерочный.


Последний раз редактировалось john; 30.11.2005 в 15:21.