Работа с большими файлами под перлом

Preview:

DESCRIPTION

YAPC Russia 2009 "May Perl 2"

Citation preview

Ханов Артур(awengar@gmail.com)

YAPC::Russia 2009

Работа с файлами:

open sysopen

ОС: Win32Intel Core 2 T7200 2GHzMem: 997MHz, 1.00 GBPerl: v5.8.8 built for MSWin32-x86-multi-thread v5.10.0 built for MSWin32-x86-multi-thread

Работа с файлами:

268435456 Файлбайта

sysopen w,$ARGV[0],0 ;binmode w;my ($sz,$of) = -s w;for ($of=0; $of<$sz; $of+=$ARGV[1]) { my $x; sysseek w, $of,0; sysread w,$x,$ARGV[1],$of;}close w;print "OK $s\r\n";

Открытие файла

Чтение файла

Особенности:1)read/sysread транслирует количество читаемых байт

Особенности:1)read/sysread транслирует количество читаемых байт2)Perl не очищает буфер читаемых данных.

Оперативнаяпамять

Время выполнения

•Нельзя читать файлы большого размера (~ 500Мб)•Естественное ограничение - смещение от начала файла

Работа с файлами портирована наWin .платформу не полностью

Perl оптимизирован для работы с .небольшимифайлами

Recommended