Provided by: manpages-ro-dev_4.27.0-1_all bug

NUME

        pthread_spin_lock,  pthread_spin_trylock,  pthread_spin_unlock  -  blochează  și deblochează blocajul de
       rotație

BIBLIOTECA

       Biblioteca de fire de execuție POSIX (libpthread, -lpthread)

SINOPSIS

       #include <pthread.h>

       int pthread_spin_lock(pthread_spinlock_t *lock);
       int pthread_spin_trylock(pthread_spinlock_t *lock);
       int pthread_spin_unlock(pthread_spinlock_t *lock);

   Cerințe pentru macrocomenzi de testare a caracteristicilor pentru glibc (consultați feature_test_macros(7)):

       pthread_spin_lock(), pthread_spin_trylock():
           _POSIX_C_SOURCE >= 200112L

DESCRIERE

       Funcția pthread_spin_lock() blochează blocajul de rotație la care face referire lock.  În cazul  în  care
       blocajul  de  rotație  este  în prezent deblocat, firul apelant dobândește imediat blocajul.  În cazul în
       care blocajul este blocat în prezent de un alt fir, firul apelant se rotește, testând blocajul până  când
       acesta devine disponibil, moment în care firul apelant preia blocajul.

       Apelarea  pthread_spin_lock()  pe  un blocaj care este deja deținut de apelant sau pe un blocaj care nu a
       fost inițializat cu pthread_spin_init(3) are ca rezultat un comportament nedefinit.

       Funcția pthread_spin_trylock() este la fel ca pthread_spin_lock(), cu excepția faptului că, dacă blocajul
       de rotație la care se face referire prin lock este blocat în prezent, atunci,  în  loc  să  se  rotească,
       apelul se întoarce imediat cu eroarea EBUSY.

       Funcția  pthread_spin_unlock()  deblochează blocajul de rotație referit la lock.  În cazul în care există
       fire de execuție care se rotesc pe blocaj, unul dintre aceste fire va dobândi blocajul.

       Apelarea pthread_spin_unlock() pe un blocaj care nu este deținut de către  apelant  are  ca  rezultat  un
       comportament nedefinit.

VALOAREA RETURNATĂ

       În caz de succes, aceste funcții returnează zero.  În caz de eșec, acestea returnează un număr de eroare.

ERORI-IEȘIRE

       pthread_spin_lock() poate eșua cu următoarele erori:

       EDEADLOCK
              Sistemul a detectat o condiție de blocaj

       pthread_spin_trylock() eșuează cu următoarele erori:

       EBUSY  Blocajul de rotație este blocat în prezent de un alt fir.

STANDARDE

       POSIX.1-2008.

ISTORIC

       glibc 2.2.  POSIX.1-2001.

LIMITĂRI

       Aplicarea oricăreia dintre funcțiile descrise în această pagină la un blocaj de rotație neinițializat are
       ca rezultat un comportament nedefinit.

       Citiți cu atenție NOTELE din pthread_spin_init(3).

CONSULTAȚI ȘI

       pthread_spin_destroy(3), pthread_spin_init(3), pthreads(7)

TRADUCERE

       Traducerea în limba română a acestui manual a fost făcută 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.

Pagini de manual de Linux 6.9.1                    2 mai 2024                               pthread_spin_lock(3)