« eio_sync
eio_syncfs »

eio_sync_file_range

(PECL eio >= 0.0.1dev)

eio_sync_file_range — ファイルセグメントをディスクに同期する

説明

function eio_sync_file_range(
    mixed $fd,
    int $offset,
    int $nbytes,
    int $flags,
    int $pri = EIO_PRI_DEFAULT,
    callable $callback = NULL,
    mixed $data = NULL
): resource

eio_sync_file_range() は、ファイルディスクリプタ fd が指すオープン中のファイルをディスクに同期します。

パラメータ

fd

ファイルディスクリプタ。

offset

同期を開始する位置をバイト単位で指定する。

nbytes

同期させる範囲の長さをバイト単位で指定する。 nbytes がゼロの場合は、offset からファイルの末尾までのすべての範囲を同期します。

flags

ビットマスク。以下のいずれかの値を含めます。 EIO_SYNC_FILE_RANGE_WAIT_BEFORE, EIO_SYNC_FILE_RANGE_WRITE, EIO_SYNC_FILE_RANGE_WAIT_AFTER. これらのフラグは、それぞれ対応する SYNC_FILE_RANGE_* と同じ意味です (SYNC_FILE_RANGE(2) の man ページを参照ください)。

pri

リクエストの優先順位。EIO_PRI_DEFAULT、EIO_PRI_MIN、EIO_PRI_MAX あるいは null を指定します。 null を渡した場合、pri は内部的に EIO_PRI_DEFAULT となります。

callback

callback 関数が、リクエスト終了時にコールされます。 この関数のプロトタイプは、

void callback(mixed $data, int $result[, resource $req]);
に一致しなければなりません。
data

は、リクエストに渡すカスタムデータです。

result

にはリクエスト固有の結果が格納されます。基本的には、対応するシステムコールが返すそのままの値となります。

req

はオプションで指定するリクエストリソースです。 eio_get_last_error() のような関数で使えます。

data

callback に渡す任意の引数。

戻り値

eio_sync_file_range() は、成功した場合にリクエストリソースを返します。失敗した場合に false を返します

関連キーワード:
同期   sync   リクエスト   range   callback   ディスク   セグメント   mixed   offset   nbytes   flags   resource   ファイルディスクリプタ   バイト   単位   範囲   リソース   syncfs   callable   オープン   開始   末尾   ビット   マスク   フラグ
関連する関数・ページ:
function.dba-sync   function.eio-sync   function.eio-fsync   ref.eio   function.eio-fdatasync   function.eio-close