ViewVC Help
View File | Revision Log | Show Annotations | Download File
/cvs/IO-AIO/AIO.pm
(Generate patch)

Comparing IO-AIO/AIO.pm (file contents):
Revision 1.186 by root, Thu Dec 30 07:19:31 2010 UTC vs.
Revision 1.187 by root, Fri Feb 11 00:05:17 2011 UTC

168use common::sense; 168use common::sense;
169 169
170use base 'Exporter'; 170use base 'Exporter';
171 171
172BEGIN { 172BEGIN {
173 our $VERSION = '3.71'; 173 our $VERSION = '3.72';
174 174
175 our @AIO_REQ = qw(aio_sendfile aio_read aio_write aio_open aio_close 175 our @AIO_REQ = qw(aio_sendfile aio_read aio_write aio_open aio_close
176 aio_stat aio_lstat aio_unlink aio_rmdir aio_readdir aio_readdirx 176 aio_stat aio_lstat aio_unlink aio_rmdir aio_readdir aio_readdirx
177 aio_scandir aio_symlink aio_readlink aio_sync aio_fsync 177 aio_scandir aio_symlink aio_readlink aio_sync aio_fsync
178 aio_fdatasync aio_sync_file_range aio_pathsync aio_readahead 178 aio_fdatasync aio_sync_file_range aio_pathsync aio_readahead
484 484
485Currently, the stats are always 64-bit-stats, i.e. instead of returning an 485Currently, the stats are always 64-bit-stats, i.e. instead of returning an
486error when stat'ing a large file, the results will be silently truncated 486error when stat'ing a large file, the results will be silently truncated
487unless perl itself is compiled with large file support. 487unless perl itself is compiled with large file support.
488 488
489To help interpret the mode and dev/rdev stat values, IO::AIO offers the
490following constants and functions (if not implemented, the constants will
491be C<0> and the functions will either C<croak> or fall back on traditional
492behaviour).
493
494C<S_IFMT>, C<S_IFIFO>, C<S_IFCHR>, C<S_IFBLK>, C<S_IFLNK>, C<S_IFREG>,
495C<S_IFDIR>, C<S_IFWHT>, C<S_IFSOCK>, C<IO::AIO::major $dev_t>,
496C<IO::AIO::minor $dev_t>, C<IO::AIO::makedev $major, $minor>.
497
489Example: Print the length of F</etc/passwd>: 498Example: Print the length of F</etc/passwd>:
490 499
491 aio_stat "/etc/passwd", sub { 500 aio_stat "/etc/passwd", sub {
492 $_[0] and die "stat failed: $!"; 501 $_[0] and die "stat failed: $!";
493 print "size is ", -s _, "\n"; 502 print "size is ", -s _, "\n";
594 603
595The only (POSIX-) portable way of calling this function is: 604The only (POSIX-) portable way of calling this function is:
596 605
597 aio_mknod $path, IO::AIO::S_IFIFO | $mode, 0, sub { ... 606 aio_mknod $path, IO::AIO::S_IFIFO | $mode, 0, sub { ...
598 607
608See C<aio_stat> for info about some potentially helpful extra constants
609and functions.
599 610
600=item aio_link $srcpath, $dstpath, $callback->($status) 611=item aio_link $srcpath, $dstpath, $callback->($status)
601 612
602Asynchronously create a new link to the existing object at C<$srcpath> at 613Asynchronously create a new link to the existing object at C<$srcpath> at
603the path C<$dstpath> and call the callback with the result code. 614the path C<$dstpath> and call the callback with the result code.

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines