08/02/29 16:47:30
他人に頼りすぎだ。
パフォーマンスが気になるなら、ちょっと確かめてみればいい。
こんなコード断片が書けないのなら、パフォーマンスなど気にするだけ無駄。
use Benchmark qw(timethese);
my $source = join(',', ('abcdefg')x80000);
my $result_ref;
timethese(100, {
temp => sub { my @temp_array = split(/,/, $source); $result_ref = \@temp_array; },
bracket => sub { $result_ref = [ split(/,/, $source) ]; },
none => sub { split(/,/, $source); },
});
Benchmark: timing 100 iterations of bracket, copy, none, temp...
bracket: 9 wallclock secs ( 8.94 usr + 0.00 sys = 8.94 CPU) @ 11.19/s (n=100)
none: 6 wallclock secs ( 6.76 usr + 0.00 sys = 6.76 CPU) @ 14.80/s (n=100)
temp: 15 wallclock secs (14.27 usr + 0.00 sys = 14.27 CPU) @ 7.01/s (n=100)