stat
выполняет ввод-вывод для каждого файла, чего нельзя избежать, если вы хотите прочитать эти данные. Так что это будет ограничение по скорости, и я не смогу обойти это иначе, чем я могу себе представить.
Если вы неоднократно stat
определяете один и тот же файл (-ы), рассмотрите возможность использования Memoize
.
use Memoize();
sub fileStat {
my ($filename) = @_;
return stat($filename);
}
Memoize::memoize('fileStat');