Sync a file segment with disk

eio_sync_file_range

(PECL eio >= 0.0.1dev)

eio_sync_file_rangeSync a file segment with disk

說明

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() 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_DEFAULTEIO_PRI_MINEIO_PRI_MAXnull。如果是 nullpri 將設為 EIO_PRI_DEFAULT

callback

callback 函式在請求完成時被呼叫。其應匹配一下原型:

void callback(mixed $data, int $result[, resource $req]);
data

傳遞給請求的用戶數據。

result

針對請求的結果的值。通常是相應的系統呼叫返回的值。

req

可選的請求資源,可被 eio_get_last_error() 之類的函式使用。

data

Arbitrary variable passed to callback.

返回值

eio_sync_file_range() returns request resource on success, 或者在失敗時返回 false.

發佈留言

發佈留言必須填寫的電子郵件地址不會公開。 必填欄位標示為 *