検証用ベンチ。

use strict;
use Benchmark;
use vars '$File'; $File = './test.txt';

timethese(-5, {
  for => sub {
    open FH, $File or die $!;
    for (<FH>) { my $line = $_ }
    close FH;
  },
  split => sub {
    open FH, $File or die $!;
    read FH, my $buffer, -s FH;
    for (split /\n/, $buffer) { my $line = $_ }
    close FH;
  },
  while => sub {
    open FH, $File or die $!;
    while (<FH>) { my $line = $_ }
    close FH;
  },
});