FileHandle - supply object methods for filehandles
cacheout - keep more files open than the system permits
use FileHandle;
autoflush STDOUT 1;
cacheout($path);
print $path @data;
See
the perlvar manpage
for complete descriptions of each of the following supported FileHandle
methods:
print
autoflush
output_field_separator
output_record_separator
input_record_separator
input_line_number
format_page_number
format_lines_per_page
format_lines_left
format_name
format_top_name
format_line_break_characters
format_formfeed
The cacheout() function will make sure that there's a filehandle
open for writing available as the pathname you give it. It automatically
closes and re-opens files if you exceed your system file descriptor maximum.
sys/param.h lies with its NOFILE define on some systems,
so you may have to set $cacheout::maxopen yourself.
Due to backwards compatibility, all filehandles resemble objects
of class FileHandle, or actually classes derived from that class.
They actually aren't. Which means you can't derive your own
class from FileHandle and inherit those methods.