… | |
… | |
168 | use common::sense; |
168 | use common::sense; |
169 | |
169 | |
170 | use base 'Exporter'; |
170 | use base 'Exporter'; |
171 | |
171 | |
172 | BEGIN { |
172 | BEGIN { |
173 | our $VERSION = '4.12'; |
173 | our $VERSION = '4.13'; |
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_seek 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_realpath aio_sync |
177 | aio_scandir aio_symlink aio_readlink aio_realpath aio_sync |
178 | aio_fsync aio_syncfs aio_fdatasync aio_sync_file_range aio_fallocate |
178 | aio_fsync aio_syncfs aio_fdatasync aio_sync_file_range aio_fallocate |
179 | aio_pathsync aio_readahead |
179 | aio_pathsync aio_readahead |
180 | aio_rename aio_link aio_move aio_copy aio_group |
180 | aio_rename aio_link aio_move aio_copy aio_group |
… | |
… | |
209 | documentation. |
209 | documentation. |
210 | |
210 | |
211 | aio_wd $pathname, $callback->($wd) |
211 | aio_wd $pathname, $callback->($wd) |
212 | aio_open $pathname, $flags, $mode, $callback->($fh) |
212 | aio_open $pathname, $flags, $mode, $callback->($fh) |
213 | aio_close $fh, $callback->($status) |
213 | aio_close $fh, $callback->($status) |
|
|
214 | aio_seek $fh,$offset,$whence, $callback->($offs) |
214 | aio_read $fh,$offset,$length, $data,$dataoffset, $callback->($retval) |
215 | aio_read $fh,$offset,$length, $data,$dataoffset, $callback->($retval) |
215 | aio_write $fh,$offset,$length, $data,$dataoffset, $callback->($retval) |
216 | aio_write $fh,$offset,$length, $data,$dataoffset, $callback->($retval) |
216 | aio_sendfile $out_fh, $in_fh, $in_offset, $length, $callback->($retval) |
217 | aio_sendfile $out_fh, $in_fh, $in_offset, $length, $callback->($retval) |
217 | aio_readahead $fh,$offset,$length, $callback->($retval) |
218 | aio_readahead $fh,$offset,$length, $callback->($retval) |
218 | aio_stat $fh_or_path, $callback->($status) |
219 | aio_stat $fh_or_path, $callback->($status) |
219 | aio_lstat $fh, $callback->($status) |
220 | aio_lstat $fh, $callback->($status) |
220 | aio_statvfs $fh_or_path, $callback->($statvfs) |
221 | aio_statvfs $fh_or_path, $callback->($statvfs) |
221 | aio_utime $fh_or_path, $atime, $mtime, $callback->($status) |
222 | aio_utime $fh_or_path, $atime, $mtime, $callback->($status) |
222 | aio_chown $fh_or_path, $uid, $gid, $callback->($status) |
223 | aio_chown $fh_or_path, $uid, $gid, $callback->($status) |
|
|
224 | aio_chmod $fh_or_path, $mode, $callback->($status) |
223 | aio_truncate $fh_or_path, $offset, $callback->($status) |
225 | aio_truncate $fh_or_path, $offset, $callback->($status) |
224 | aio_chmod $fh_or_path, $mode, $callback->($status) |
|
|
225 | aio_unlink $pathname, $callback->($status) |
226 | aio_unlink $pathname, $callback->($status) |
226 | aio_mknod $pathname, $mode, $dev, $callback->($status) |
227 | aio_mknod $pathname, $mode, $dev, $callback->($status) |
227 | aio_link $srcpath, $dstpath, $callback->($status) |
228 | aio_link $srcpath, $dstpath, $callback->($status) |
228 | aio_symlink $srcpath, $dstpath, $callback->($status) |
229 | aio_symlink $srcpath, $dstpath, $callback->($status) |
229 | aio_readlink $pathname, $callback->($link) |
230 | aio_readlink $pathname, $callback->($link) |
… | |
… | |
410 | Or in other words: the file descriptor will be closed, but it will not be |
411 | Or in other words: the file descriptor will be closed, but it will not be |
411 | free for reuse until the perl filehandle is closed. |
412 | free for reuse until the perl filehandle is closed. |
412 | |
413 | |
413 | =cut |
414 | =cut |
414 | |
415 | |
|
|
416 | =item aio_seek $fh, $offset, $whence, $callback->($offs) |
|
|
417 | |
|
|
418 | Seeks the filehandle to the new C<$offset>, similarly to perl'S |
|
|
419 | C<sysseek>. The C<$whence> can use the traditional values (C<0> for |
|
|
420 | C<IO::AIO::SEEK_SET>, C<1> for C<IO::AIO::SEEK_CUR> or C<2> for |
|
|
421 | C<IO::AIO::SEEK_END>). |
|
|
422 | |
|
|
423 | The resulting absolute offset will be passed to the callback, or C<-1> in |
|
|
424 | case of an error. |
|
|
425 | |
|
|
426 | In theory, the C<$whence> constants could be different than the |
|
|
427 | corresponding values from L<Fcntl>, but perl guarantees they are the same, |
|
|
428 | so don't panic. |
|
|
429 | |
415 | =item aio_read $fh,$offset,$length, $data,$dataoffset, $callback->($retval) |
430 | =item aio_read $fh,$offset,$length, $data,$dataoffset, $callback->($retval) |
416 | |
431 | |
417 | =item aio_write $fh,$offset,$length, $data,$dataoffset, $callback->($retval) |
432 | =item aio_write $fh,$offset,$length, $data,$dataoffset, $callback->($retval) |
418 | |
433 | |
419 | Reads or writes C<$length> bytes from or to the specified C<$fh> and |
434 | Reads or writes C<$length> bytes from or to the specified C<$fh> and |