thrd_create
|
Definiert im Header
<threads.h>
|
||
|
int
thrd_create
(
thrd_t
*
thr,
thrd_start_t
func,
void
*
arg
)
;
|
(seit C11) | |
Erstellt einen neuen Thread, der die Funktion
func
ausführt. Die Funktion wird aufgerufen als
func
(
arg
)
.
Bei Erfolg wird das Objekt, auf das
thr
zeigt, auf die Kennung des neuen Threads gesetzt.
Die Beendigung dieser Funktion synchronizes-with den Beginn des Threads.
Inhaltsverzeichnis |
Parameter
| thr | - | Zeiger auf den Speicherort, an dem die Kennung des neuen Threads abgelegt werden soll |
| func | - | auszuführende Funktion |
| arg | - | an die Funktion zu übergebendes Argument |
Rückgabewert
thrd_success wenn die Erstellung des neuen Threads erfolgreich war. Andernfalls wird thrd_nomem zurückgegeben, wenn unzureichend Speicher verfügbar war, oder thrd_error wenn ein anderer Fehler aufgetreten ist.
Hinweise
Thread-Identifikatoren können für neue Threads wiederverwendet werden, sobald der Thread beendet und gejoined oder detached wurde.
Der Typ thrd_start_t ist ein Typedef von int ( * ) ( void * ) , was sich vom POSIX-Äquivalent void * ( * ) ( void * ) unterscheidet.
Alle threadspezifischen Speicherwerte (siehe tss_create ) werden mit NULL initialisiert.
Die Rückkehr aus der Funktion
func
entspricht dem Aufruf von
thrd_exit
mit dem Argument gleich dem Rückgabewert von
func
.
Referenzen
- C17-Standard (ISO/IEC 9899:2018):
-
- 7.26.5.1 Die thrd_create-Funktion (S: 279)
- C11-Standard (ISO/IEC 9899:2011):
-
- 7.26.5.1 Die thrd_create-Funktion (S: 383)
Siehe auch
|
(C11)
|
trennt einen Thread
(Funktion) |
|
(C11)
|
blockiert bis ein Thread terminiert
(Funktion) |
|
C++ Dokumentation
für
thread
|
|