table of contents
- bookworm-backports 4.24.0-2~bpo12+1
- testing 4.24.0-2
- unstable 4.24.0-2
pthread_rwlockattr_setkind_np(3) | Library Functions Manual | pthread_rwlockattr_setkind_np(3) |
NUME¶
pthread_rwlockattr_setkind_np, pthread_rwlockattr_getkind_np - stabilește/obține tipul de blocare de citire-scriere a obiectului atribut de blocare de citire-scriere a firului de execuție
BIBLIOTECA¶
Biblioteca de fire de execuție POSIX (libpthread, -lpthread)
SINOPSIS¶
#include <pthread.h>
int pthread_rwlockattr_setkind_np(pthread_rwlockattr_t *attr, int pref); int pthread_rwlockattr_getkind_np( const pthread_rwlockattr_t *restrict attr, int *restrict pref);
pthread_rwlockattr_setkind_np(), pthread_rwlockattr_getkind_np():
_XOPEN_SOURCE >= 500 || _POSIX_C_SOURCE >= 200809L
DESCRIERE¶
Funcția pthread_rwlockattr_setkind_np() stabilește atributul „lock kind” (tip blocare) al obiectului atribut de blocare la citire-scriere la care face referire attr la valoarea specificată în pref. Argumentul pref poate fi stabilit la una dintre următoarele valori:
- PTHREAD_RWLOCK_PREFER_READER_NP
- Aceasta este valoarea implicită. Un fir de execuție poate deține mai multe blocaje de citire; adică, blocajele de citire sunt recursive. Conform specificației Single Unix Specification, comportamentul este nespecificat atunci când un cititor încearcă să plaseze un blocaj și nu există un blocaj de scriere, dar scriitorii sunt în așteptare. Acordarea preferinței cititorului, așa cum este stabilită de PTHREAD_RWLOCK_PREFER_READER_NP, implică faptul că cititorul va primi blocajul solicitat, chiar dacă un scriitor așteaptă. Atâta timp cât există cititori, scriitorul va fi lipsit de blocare.
- PTHREAD_RWLOCK_PREFER_WRITER_NP
- Aceasta este considerată ca fiind analogul de blocare la scriere al lui PTHREAD_RWLOCK_PREFER_READER_NP. Aceasta este ignorată de glibc deoarece cerința POSIX de a suporta blocaje de citire recursive ar face ca această opțiune să creeze blocaje mortale triviale; în schimb, utilizați PTHREAD_RWLOCK_PREFER_WRITER_NONRECURSIVE_NP care asigură că dezvoltatorul aplicației nu va lua blocaje de citire recursive, evitând astfel blocajele mortale.
- PTHREAD_RWLOCK_PREFER_WRITER_NONRECURSIVE_NP
- Stabilirea tipului de blocare la această valoare evită privarea scriitorului, atâta timp cât blocarea la citire nu se face în mod recursiv.
Funcția pthread_rwlockattr_getkind_np() returnează valoarea atributului tipului de blocare al obiectului atribut de blocare pentru citire-scriere la care face referire attr în indicatorul pref.
VALOAREA RETURNATö
În caz de succes, aceste funcții returnează 0. În cazul unor argumente valide pentru pointer, pthread_rwlockattr_getkind_np() reușește întotdeauna. În caz de eroare, pthread_rwlockattr_setkind_np() returnează un număr de eroare diferit de zero.
ERORI-IEȘIRE¶
- EINVAL
- pref specifică o valoare neacceptată.
VERSIUNI¶
Funcțiile pthread_rwlockattr_getkind_np() și pthread_rwlockattr_setkind_np() au apărut pentru prima dată în glibc 2.1.
STANDARDE¶
Aceste funcții sunt extensii GNU nestandardizate; de aici și sufixul „_np” („neportabilă”) din nume.
CONSULTAȚI ȘI¶
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.
30 octombrie 2022 | Pagini de manual de Linux 6.03 |