dio_fcntl
dio_fcntl
(PHP 4 >= 4.2.0)
dio_fcntl - выполняет функцию fcntl c-библиотеки на дескрипторе fd.
Описание
mixed dio_fcntl (resource fd, int cmd [, mixed arg])
Функция dio_fcntl() выполняет операции, специфицированные параметром cmd, с дескриптором файла fd. Некоторые команды требуют предоставления дополнительных аргументов args.
arg это ассоциативный массив, когда cmd имеет значение F_SETLK или F_SETLLW, со следующими ключами:
- "start" - смешение, где начинается блокировка.
- "length" - размер блокированной области. zero означает конец файла.
- "wenth" - где относится к l_start: может быть SEEK_SET, SEEK_END и SEEK_CUR.
- "type" - тип блокировки: может быть F_RDLCK (read lock), F_WRLCK (write lock) или F_UNLCK (unlock).
cmd может быть одной из следующих операций:
- F_SETLK - блокировка установлена или очищена. Если блокировка удерживается кем-либо ещё, dio_fcntl() возвращает -1.
- F_SETLKW - похожа на F_SETLK, но в случае, когда блокировка удерживается кем-либо ещё, dio_fcntl() ожидает, пока блокировка не будет освобождена.
- F_GETLK - dio_fcntl() возвращает ассоциативный массив (как описано выше), если кто-нибудь ещё предотвращает блокировку. Если препятствий нет, ключ "type" будет установлен F_UNLCK.
- F_DUPFD - находит наименьший нумерованный дескриптор файла, больше или равный arg, и возвращает его.