(PECL eio >= 0.0.1dev)
eio_sync_file_range — Sync a file segment with disk
$fd
, int $offset
, int $nbytes
, int $flags
[, int $pri
= EIO_PRI_DEFAULT
[, callable $callback
= NULL
[, mixed $data
= NULL
]]] )
eio_sync_file_range() permits fine control when synchronizing the open file referred to by the file
descriptor fd
with disk.
fd
File descriptor
offset
The starting byte of the file range to be synchronized
nbytes
Specifies the length of the range to be synchronized, in bytes. If
nbytes
is zero, then all bytes from offset
through
to the end of file are synchronized.
flags
A bit-mask. Can include any of the following values:
EIO_SYNC_FILE_RANGE_WAIT_BEFORE
,
EIO_SYNC_FILE_RANGE_WRITE
,
EIO_SYNC_FILE_RANGE_WAIT_AFTER
. These flags have
the same meaning as their SYNC_FILE_RANGE_*
counterparts(see SYNC_FILE_RANGE(2) man page).
pri
リクエストの優先順位。EIO_PRI_DEFAULT
、EIO_PRI_MIN
、EIO_PRI_MAX
あるいは NULL
を指定します。
NULL
を渡した場合、pri
は内部的に
EIO_PRI_DEFAULT
となります。
callback
callback
関数が、リクエスト終了時にコールされます。
この関数のプロトタイプは、
void callback($data, $result);
$data
は、リクエストに渡すカスタムデータです。
$result
にはリクエスト固有の結果が格納されます。基本的には、対応するシステムコールが返すそのままの値となります。
data
Arbitrary variable passed to callback
.
eio_sync_file_range() returns request resource on success or FALSE
on error.