(PECL eio >= 0.0.1dev)
eio_fallocate — Позволяет напрямую управлять размером используемого дискового пространства для файла
$fd
, int $mode
, int $offset
, int $length
[, int $pri
= EIO_PRI_DEFAULT
[, callable $callback
= NULL
[, mixed $data
= NULL
]]] )
eio_fallocate() позволяет напрямую управлять размером
используемого дискового пространства для файла. Дескриптор файла указывается в параметре
fd
, размер определяется диапазоном в байтах, начиная от смещения
offset
и до length
.
Замечание: Файл должен быть открытым для записи
EIO_O_CREAT
OR (одна из константEIO_O_WRONLY
,EIO_O_RDWR
fd
Поток, указатель на сокет, или числовой дескриптор файла, например возвращенный eio_open().
mode
Доступен только один флаг:
EIO_FALLOC_FL_KEEP_SIZE
(то же самое, что
FALLOC_FL_KEEP_SIZE
в POSIX).
offset
Определяет смещение диапазона в байтах.
length
Определяет размер диапазона.
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_fallocate() возвращает указатель на запрос при успехе или FALSE
при ошибке.