lockf(3) | Library Functions Manual | lockf(3) |
lockf - aplică, testează sau elimină o blocare POSIX pe un fișier deschis
Biblioteca C standard (libc, -lc)
#include <unistd.h>
int lockf(int fd, int cmd, off_t len);
lockf():
_XOPEN_SOURCE >= 500 || /* glibc >= 2.19: */ _DEFAULT_SOURCE || /* glibc <= 2.19: */ _BSD_SOURCE || _SVID_SOURCE
Aplică, testează sau elimină un blocaj POSIX pe o secțiune a unui fișier deschis. Fișierul este specificat prin fd, un descriptor de fișier deschis pentru scriere, acțiunea prin cmd, iar secțiunea este formată din pozițiile de octeți pos..pos+len-1 dacă len este pozitiv și pos-len. pos-1 dacă len este negativ, unde pos este poziția curentă a fișierului, iar dacă len este zero, secțiunea se extinde de la poziția curentă a fișierului până la infinit, cuprinzând pozițiile prezente și viitoare de sfârșit de fișier. În toate cazurile, secțiunea se poate extinde dincolo de sfârșitul curent al fișierului.
În Linux, lockf() este doar o interfață peste blocarea fcntl(2). Multe alte sisteme implementează lockf() în acest mod, dar rețineți că POSIX.1 lasă nespecificată relația dintre blocările lockf() și fcntl(2). O aplicație portabilă ar trebui probabil să evite amestecarea apelurilor la aceste interfețe.
Operațiile valide sunt prezentate mai jos:
În caz de succes, se returnează zero. În caz de eroare, se returnează -1, iar errno este configurată pentru a indica eroarea.
Pentru o explicație a termenilor folosiți în această secțiune, a se vedea attributes(7).
Interfață | Atribut | Valoare |
lockf() | Siguranța firelor | MT-Safe |
POSIX.1-2001, POSIX.1-2008, SVr4.
fcntl(2), flock(2)
locks.txt și mandatory-locking.txt în directorul sursă al nucleului Linux Documentation/filesystems (pe nucleele mai vechi, aceste fișiere se află direct sub directorul Documentation, iar mandatory-locking.txt se numește mandatory.txt).
Traducerea în limba română a acestui manual a fost creată de Remus-Gabriel Chelu <remusgabriel.chelu@disroot.org>
Această traducere este documentație gratuită; citiți Licența publică generală GNU Versiunea 3 sau o versiune ulterioară cu privire la condiții privind drepturile de autor. NU se asumă Nicio RESPONSABILITATE.
Dacă găsiți erori în traducerea acestui manual, vă rugăm să trimiteți un e-mail la translation-team-ro@lists.sourceforge.net.
5 februarie 2023 | Pagini de manual de Linux 6.03 |