The OpenNET Project / Index page

[ новости /+++ | форум | wiki | теги | ]

Интерактивная система просмотра системных руководств (man-ов)

 ТемаНаборКатегория 
 
 [Cписок руководств | Печать]

lockf (3)
  • lockf (1) ( FreeBSD man: Команды и прикладные программы пользовательского уровня )
  • lockf (3) ( Solaris man: Библиотечные вызовы )
  • lockf (3) ( FreeBSD man: Библиотечные вызовы )
  • >> lockf (3) ( Русские man: Библиотечные вызовы )
  • lockf (3) ( Linux man: Библиотечные вызовы )
  • lockf (3) ( POSIX man: Библиотечные вызовы )
  •  

    НАЗВАНИЕ

    lockf - проверяет, устанавливает POSIX-блокировку на открытом файле или снимает ее с файла  

    СИНТАКСИС

    #include <unistd.h>

    int lockf(int fd, int cmd, off_t len);  

    ОПИСАНИЕ

    Устанавливает POSIX-блокировку на открытом файле, проверяет ее наличие или снимает ее с файла. Файл определяется параметром fd. Данная функция - всего лишь более удобный способ вызова fcntl(2). Список существующих операций приведен ниже:

    F_LOCK
    (устанавливает блокировку на файле. Только один процесс может блокировать данный файл в текущий момент времени. Если файл уже блокирован, то он будет блокирован позже, когда будет снята предыдущая блокировка.);
    F_TLOCK
    (то же самое, что и F_LOCK, но не блокирует файл, а возвращает сообщение об ошибке, если файл уже заблокирован в данный момент);
    F_ULOCK
    (снимает блокировку с файла);
    F_TEST
    (проверяет наличие блокировки: возвращает 0, если fd не блокирован или заблокирован данным (текущим) процессом; возвращается -1; значение errno меняется на EACCES, если файл занят другим процессом);

     

    ВОЗВРАЩАЕМЫЕ ЗНАЧЕНИЯ

    При нормальном завершении работы возвращается ноль. При ошибках возвращается -1 и переменная errno изменяется соответственно ошибке.  

    НАЙДЕННЫЕ ОШИБКИ

    EAGAIN
    (файл блокирован и установлен флаг LOCK_NB , или операция запрещается, поскольку файл отражен в память другим процессом);
    EBADF
    (fd не является описателем открытого файла);
    EDEADLK
    (выполнение операции блокирования должно привести к зависанию программы);
    EINVAL
    fd была указана неправильная операция);
    ENOLCK
    (открыто слишком много сегментов для блокировки, таблица блокировок переполнена).
     

    СООТВЕТСТВИЕ СТАНДАРТАМ

    SYSV  

    СМ. ТАКЖЕ

    fcntl(2), flock(2)
    Дополнительную информацию можно найти в файлах locks.txt и mandatory.txt из каталога /usr/src/linux/Documentation.


     

    Index

    НАЗВАНИЕ
    СИНТАКСИС
    ОПИСАНИЕ
    ВОЗВРАЩАЕМЫЕ ЗНАЧЕНИЯ
    НАЙДЕННЫЕ ОШИБКИ
    СООТВЕТСТВИЕ СТАНДАРТАМ
    СМ. ТАКЖЕ


    Поиск по тексту MAN-ов: 




    Спонсоры:
    PostgresPro
    Inferno Solutions
    Hosting by Hoster.ru
    Хостинг:

    Закладки на сайте
    Проследить за страницей
    Created 1996-2022 by Maxim Chirkov
    Добавить, Поддержать, Вебмастеру