filecache(3)

NAME

FileCache - keep more files open than the system permits

SYNOPSIS

use FileCache;
# or
use FileCache maxopen => 16;
cacheout $path;
print $path @data;
cacheout $mode, $path;
print $path @data;

DESCRIPTION

The "cacheout" function will make sure that there's a
filehandle open for reading or writing available as the
pathname you give it. It automatically closes and re-opens
files if you exceed your system's maximum number of file
descriptors, or the suggested maximum.

cacheout EXPR
The 1-argument form of cacheout will open a file for
writing ('>') on it's first use, and appending ('>>')
thereafter.
cacheout MODE, EXPR
The 2-argument form of cacheout will use the supplied
mode for the initial and subsequent openings. Most
valid modes for 3-argument "open" are supported
namely; '>', '+>', '<', '<+', '>>', '|-' and '-|'

CAVEATS

If you use cacheout with '|-' or '-|' you should catch
SIGPIPE and explicitly close the filehandle., when it is
closed from the other end some cleanup needs to be done.

While it is permissible to "close" a FileCache managed
file, do not do so if you are calling "FileCache::cache
out" from a package other than which it was imported, or
with another module which overrides "close". If you must,
use "FileCache::cacheout_close".

BUGS

sys/param.h lies with its "NOFILE" define on some systems, so you may have to set maxopen ($FileCache::cacheout_max_ open) yourself.
Copyright © 2010-2025 Platon Technologies, s.r.o.           Home | Man pages | tLDP | Documents | Utilities | About
Design by styleshout