in reply to Re^3: Where's the leak?
in thread Where's the leak?

I may be out of date, but doesnt perl use its PerlIO layer wich just indirectly uses fseek,fwrite and ftell ad nauseum to mem map files for line-by-line? Last time I looked I dont think I saw that it buffered the entire file, which is what you need to do (ie read the entire file in one swoop) to get windows busrting mode to kick in.

stdio
Layer which calls fread, fwrite and fseek/ftell etc. Note that as this is "real" stdio it will ignore any layers beneath it and got straight to the operating system via the C library as usual.

perlio
This is a re-implementation of "stdio-like" buffering written as a PerlIO "layer". As such it will call whatever layer is below it for its operations.

-Waswas

Replies are listed 'Best First'.
Re^5: Where's the leak?
by Aristotle (Chancellor) on Dec 23, 2002 at 22:54 UTC
    Ah. I thought you meant it was reading the file one line at a time over the network - which it doesn't, it gobbles up larger chunks and hands you the lines out of the current one from a buffer. It won't buffer the entire file at once though, that's correct.

    Makeshifts last the longest.