… | |
… | |
172 | BEGIN { |
172 | BEGIN { |
173 | our $VERSION = '4.0'; |
173 | our $VERSION = '4.0'; |
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_realpath aio_sync aio_fsync |
177 | aio_scandir aio_symlink aio_readlink aio_realpath aio_sync |
178 | 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 |
181 | aio_nop aio_mknod aio_load aio_rmtree aio_mkdir aio_chown |
181 | aio_nop aio_mknod aio_load aio_rmtree aio_mkdir aio_chown |
182 | aio_chmod aio_utime aio_truncate |
182 | aio_chmod aio_utime aio_truncate |
183 | aio_msync aio_mtouch aio_mlock aio_mlockall |
183 | aio_msync aio_mtouch aio_mlock aio_mlockall |
… | |
… | |
237 | aio_copy $srcpath, $dstpath, $callback->($status) |
237 | aio_copy $srcpath, $dstpath, $callback->($status) |
238 | aio_move $srcpath, $dstpath, $callback->($status) |
238 | aio_move $srcpath, $dstpath, $callback->($status) |
239 | aio_scandir $path, $maxreq, $callback->($dirs, $nondirs) |
239 | aio_scandir $path, $maxreq, $callback->($dirs, $nondirs) |
240 | aio_rmtree $path, $callback->($status) |
240 | aio_rmtree $path, $callback->($status) |
241 | aio_sync $callback->($status) |
241 | aio_sync $callback->($status) |
|
|
242 | aio_syncfs $fh, $callback->($status) |
242 | aio_fsync $fh, $callback->($status) |
243 | aio_fsync $fh, $callback->($status) |
243 | aio_fdatasync $fh, $callback->($status) |
244 | aio_fdatasync $fh, $callback->($status) |
244 | aio_sync_file_range $fh, $offset, $nbytes, $flags, $callback->($status) |
245 | aio_sync_file_range $fh, $offset, $nbytes, $flags, $callback->($status) |
245 | aio_pathsync $path, $callback->($status) |
246 | aio_pathsync $path, $callback->($status) |
246 | aio_msync $scalar, $offset = 0, $length = undef, flags = 0, $callback->($status) |
247 | aio_msync $scalar, $offset = 0, $length = undef, flags = 0, $callback->($status) |
… | |
… | |
1084 | callback with the fdatasync result code. |
1085 | callback with the fdatasync result code. |
1085 | |
1086 | |
1086 | If this call isn't available because your OS lacks it or it couldn't be |
1087 | If this call isn't available because your OS lacks it or it couldn't be |
1087 | detected, it will be emulated by calling C<fsync> instead. |
1088 | detected, it will be emulated by calling C<fsync> instead. |
1088 | |
1089 | |
|
|
1090 | =item aio_syncfs $fh, $callback->($status) |
|
|
1091 | |
|
|
1092 | Asynchronously call the syncfs syscall to sync the filesystem associated |
|
|
1093 | to the given filehandle and call the callback with the syncfs result |
|
|
1094 | code. If syncfs is not available, calls sync(), but returns C<-1> and sets |
|
|
1095 | errno to C<ENOSYS> nevertheless. |
|
|
1096 | |
1089 | =item aio_sync_file_range $fh, $offset, $nbytes, $flags, $callback->($status) |
1097 | =item aio_sync_file_range $fh, $offset, $nbytes, $flags, $callback->($status) |
1090 | |
1098 | |
1091 | Sync the data portion of the file specified by C<$offset> and C<$length> |
1099 | Sync the data portion of the file specified by C<$offset> and C<$length> |
1092 | to disk (but NOT the metadata), by calling the Linux-specific |
1100 | to disk (but NOT the metadata), by calling the Linux-specific |
1093 | sync_file_range call. If sync_file_range is not available or it returns |
1101 | sync_file_range call. If sync_file_range is not available or it returns |