Man page - pthread_tryjoin_np(3)

Packages contains this manual

Available languages:

en fr ja ru ro

Manual

pthread_tryjoin_np

NUME
BIBLIOTECA
SINOPSIS
DESCRIERE
VALOAREA RETURNATĂ
ERORI-IEȘIRE
ATRIBUTE
STANDARDE
ISTORIC
ERORI
EXEMPLE
CONSULTAȚI ȘI
TRADUCERE

NUME

pthread_tryjoin_np, pthread_timedjoin_np - încearcă să unească cu un fir ce s-a terminat de executat

BIBLIOTECA

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

SINOPSIS

#define _GNU_SOURCE /* Consultați feature_test_macros(7) */
#include <pthread.h>

int pthread_tryjoin_np(pthread_t thread , void ** retval );
int pthread_timedjoin_np(pthread_t
thread , void ** retval ,
const struct timespec *
abstime );

DESCRIERE

Aceste funcții operează în același mod ca și pthread_join (3), cu excepția diferențelor descrise în această pagină.

Funcția pthread_tryjoin_np () efectuează o îmbinare fără blocare cu firul thread , returnând starea de ieșire a firului în *retval . În cazul în care thread nu s-a încheiat încă, atunci, în loc să se blocheze, așa cum face pthread_join (3), apelul returnează o eroare.

Funcția pthread_timedjoin_np () efectuează o îmbinare cu temporizare (join-with-timeout). Dacă thread nu s-a încheiat încă, atunci apelul se blochează până la un timp maxim, specificat în abstime , măsurat în funcție de ceasul CLOCK_REALTIME . În cazul în care timpul de așteptare expiră înainte ca thread să se încheie, apelul returnează o eroare. Argumentul abstime este o structură timespec (3), specificând un timp absolut măsurat de la Epocă (a se vedea time (2)).

VALOAREA RETURNATĂ

În caz de succes, aceste funcții returnează 0; în caz de eroare, ele returnează un număr de eroare.

ERORI-IEȘIRE

Aceste funcții pot eșua cu aceleași erori ca și pthread_join (3). În plus, pthread_tryjoin_np () poate eșua cu următoarea eroare:

EBUSY

thread nu se încheiase încă în momentul apelului.

pthread_timedjoin_np () poate, în plus, să eșueze cu următoarele erori:

EINVAL

valoarea abstime nu este valabilă ( tv_sec este mai mică decât 0 sau tv_nsec este mai mare decât 1e9).

ETIMEDOUT

Apelul a expirat înainte ca thread să se încheie.

pthread_timedjoin_np () nu returnează niciodată eroarea EINTR .

ATRIBUTE

Pentru o explicație a termenilor folosiți în această secțiune, a se vedea attributes (7).

Image grohtml-667309-1.png

STANDARDE

GNU; de aici și sufixul „_np” (neportabil) din denumiri.

ISTORIC

glibc 2.3.3.

ERORI

Funcția pthread_timedjoin_np () măsoară timpul prin calcularea internă a unui interval de somn relativ care este apoi măsurat în raport cu ceasul CLOCK_MONOTONIC în loc de ceasul CLOCK_REALTIME . În consecință, timpul de așteptare nu este afectat de modificările discontinue ale ceasului CLOCK_REALTIME .

EXEMPLE

Următorul cod așteaptă să se unească timp de până la 5 secunde:

struct timespec ts;
int s;
...
if (clock_gettime(CLOCK_REALTIME, &ts) == -1) {
/* Gestionare eroare */
}
ts.tv_sec += 5;
s = pthread_timedjoin_np(thread, NULL, &ts);
if (s != 0) {
/* Gestionare eroare */
}

CONSULTAȚI ȘI

clock_gettime (2), pthread_exit (3), pthread_join (3), timespec (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 .