[Moscow.pm] Оптимизация
Ivan B. Serezhkin
ivan на serezhkin.com
Чт Дек 6 02:16:23 PST 2007
Ivan Shirokoff wrote:
> Монашёв Михаил пишет:
>
>> Очевидно, что делать my в цикле медленнее, чем сделать my единожды.
>>
>>
>>
> Ну конечно же... при каждой следующей итерации while, выполняется код в
> блоке, ограниченном круглыми скобками.
>
> А представьте, если у вас там каждую итерацию будут отрабатывать не две
> относительно легенькие функции my и each, а что-нибудь адское...
>
> Так что конечно нужно выносить за цикл все тяжелости.
>
Я б не сказал, что my это тяжёлая операция.
Это просто $scalar_stash{variable_name}=undef;
и delete $scalar_stash{variable_name} по выходу из скопа.
Но когда цикл большой - то да, в сумме все эти лишние телодвижения могут
сделать лишнюю секунду или две.
--
Ivan B. Serezhkin
Подробная информация о списке рассылки Moscow-pm