Linux |
CentOS 4.8 |
|
pthread_detach(3thr) |
pthread_detach − place un thread en cours d’éxécution dans l’état détaché. |
#include <pthread.h> int pthread_detach(pthread_t th); |
pthread_detach place le thread th dans l’état détaché. Celà garantit que les ressources mémoires consommées par th seront immédiatement libérées lorsque l’exécution de th s’achèvera. Cependant, celà empêche les autres threads de se synchroniser sur la mort de th en utilisant pthread_join. Un thread peut être créé initiallement dans l’état détaché, en utilisant l’attribut detachstate dans l’appel de pthread_create(3). Par opposition, pthread_detach ne s’applique qu’aux threads créés dans l’état joignable, et nécessitant d’être mis dans l’état détaché plus tard. Dès que pthread_detach rend la main, tout appel ultérieur à pthread_join sur th échouera. Si un autre thread a déjà joint le thread th lorsque pthread_detach est appelée, pthread_detach ne fait rien, et laisse th dans l’état joignable. |
En cas de succès, 0 est renvoyé. En cas d’errer, un code d’erreur non nul est renvoyé. |
ESRCH |
Aucun thread ne correspond à celui indiqué par th |
||
EINVAL |
le thread th est déjà dans l’état détaché. |
Xavier Leroy <Xavier.Leroy@inria.fr> |
pthread_create(3), pthread_join(3), pthread_attr_setdetachstate(3) |
Thierry Vignaud <tvignaud@mandrakesoft.com>, 2000 |
pthread_detach(3thr) |