Функция pthread_detach() применяется как альтернатива
pthread_join(),
чтобы утилизировать область памяти для потока, который был создан
с атрибутом detachstate, установленным в значение PTHREAD_CREATE_JOINABLE.
Прототип функции:
int pthread_detach(thread_t tid);
Пример вызова функции:
#include <pthread.h>
pthread_t tid;
int ret;
/* отделить поток tid */
ret = pthread_detach(tid);
Функция pthread_detach() используется, чтобы указать библиотеке потоков,
что выделенная память для потока tid может быть утилизирована,
когда поток завершится. Если tid не закончился, pthread_detach()
не ускоряет его завершения и возвращает 0 при успешном завершении. Любое
другое значение указывает, что произошла ошибка.