pthread_attr_getdetachstate oder pthread_attr_setdetachstate-Subroutinen

Zweck

Legt den Wert des Attributs detachstate eines Threadattributobjekts fest und gibt diesen zurück.

Bibliothek

Threadbibliothek (libpthreads.a)

Syntax

#include <pthread.h>

int pthread_attr_setdetachstate (attr, detachstate)
pthread_attr_t *attr;
int detachstate;

int pthread_attr_getdetachstate (attr, detachstate)
const pthread_attr_t *attr;
int *detachstate;

Beschreibung

Das Attribut 'detachstate' steuert, ob der Thread in einem freigegebenen Status erstellt wird. Wenn der Thread abgehängt erstellt wird, ist die Verwendung der ID des neu erstellten Threads durch die Funktion pthread_detach oder pthread_join ein Fehler.

pthread_attr_setdetachstate und pthread_attr_getdetachstatelegen das Attribut detachstate im Objekt attr fest und rufen es ab.

Das Attribut detachstate kann auf PTHREAD_CREATE_DETACHED oder PTHREAD_CREATE_JOINABLE gesetzt werden. Der Wert PTHREAD_CREATE_DETACHED bewirkt, dass alle Threads, die mit attr erstellt wurden, den Status FREIGEGEBEN haben, während die Verwendung des Werts PTHREAD_CREATE_JOINABLE dazu führt, dass alle Threads, die mit attr erstellt wurden, den Status 'joinable' haben. Der Standardwert des Attributs detachstate ist PTHREAD_CREATE_JOINABLE.

Parameter

Element Beschreibung
attr Gibt das Threadattributobjekt an.
Ablösestatus Zeigt, wo der Wert des Attributs 'detachstate' gespeichert wird.

Rückgabewerte

Nach erfolgreicher Ausführung geben pthread_attr_setdetachstate und pthread_attr_getdetachstate den Wert 0zurück. Andernfalls wird eine Fehlernummer zurückgegeben, die den Fehler angibt.

Die Funktion pthread_attr_getdetachstate speichert bei erfolgreicher Ausführung den Wert des Attributs 'detachstate' im Parameter detachstate .

Fehlercodes

Die Funktion pthread_attr_setdetachstate schlägt in den folgenden Fällen fehl:

Element Beschreibung
EINVAL Der Wert von detachstate war ungültig.

Die Funktionen pthread_attr_getdetachstate und pthread_attr_setdetachstate schlagen in den folgenden Fällen fehl:

Element Beschreibung
EINVAL Der Attributparameter ist ungültig.

Diese Funktionen geben nicht den Fehlercode EINTR zurück.