[Moscow.pm] Оптимизация

Alex Kapranoff alex на kapranoff.ru
Чт Дек 6 02:40:15 PST 2007


В Чтв, 06/12/2007 в 12:50 +0300, Монашёв Михаил пишет:
> Очевидно, что делать my в цикле медленнее, чем сделать my единожды.

Это не очевидно, потому что my не должен иметь runtime-эффектов.
Но к сожалению имеет.

> > Я провёл тестирование и наткнулся на интересный момент.
> > Простой перебор хеша с помощью each можно ускорить на 12-15%
> 
> > Запись, которую обычно используют:
> > while(my($key, $value) = each %hash)
> > {
> > }
> 
> > Полностью аналогичная запись:
> > {
> > ═══ my($key, $value);
> > ═══ while(($key, $value) = each %hash)
> > ═══ {
> > ═══ }
> > }
> 
> > во втором случае мы получаем прирост производительности оставляя
> > при этом туже область видимости, что и в первом. 
> 
> 
> 
> -- 
> С уважением,
> Монашёв Михаил, SoftSearch.ru
> mailto:postmaster на softsearch.ru
> ICQ# 166233339
> http://softsearch.ru/
> Без бэкапа по жизни.
> 
> ______________________________________________________________________
> Moscow.pm mailing list
> moscow-pm на pm.org | http://moscow.pm.org
> http://mail.pm.org/mailman/listinfo/moscow-pm



Подробная информация о списке рассылки Moscow-pm