linux知识点总结
四:thread
?怎样设置?
detach状态:
一般情况下,线程终止后,其终止状态一直保留到其它线程调用pthread_join获取它的
linux知识点总结
四:thread
?怎样设置?
detach状态:
一般情况下,线程终止后,其终止状态一直保留到其它线程调用pthread_join获取它的状态为止。
但是线程也可以被置为detach状态,这样的线程一旦终止就立刻回收它占用的所有资源,而不保留终止状态。
不能对一个已经处于detach状态的线程调用pthread_join,这样的调用将返回EINVAL。
设置方法:
对一个尚未detach的线程调用pthread join或 pthread detach都可以把该线程置为detach状态,也就是
说,不能对同一线程调用两次pthread join,或者如果已经对一个线程调用了pthread detach就不能再调用
pthread_join了。
int pthread_detach(pthread_t tid);
返回值:成功返回0,失败返回错误号。
。
函数pthread_join用来等待一个线程的结束,线程间同步的操作。
头文件: #include
函数定义: int pthread join(pthread t th, void **value_ptr );
th: 被等待线程的标识符
value_ptr :用户定义指针,用来存储被等待结束线程的返回值,
调用该函数的线程将挂起等待,直到id为th的线程终止。
、exit、pthread exit和pthread cancel分别起到什么作用?return,如果thread线程通过return返回,value_ptr所指向的单元里存放的是thread线程函数的返回值。
exit 终止整个进程。如果进程中的任一线程调用了exit,那么整个进程就会终止。
四:thread
?怎样设置?
detach状态:
一般情况下,线程终止后,其终止状态一直保留到其它线程调用pthread_join获取它的状态为止。
但是线程也可以被置为detach状态,这样的线程一旦终止就立刻回收它占用的所有资源,而不保留终止状态。
不能对一个已经处于detach状态的线程调用pthread_join,这样的调用将返回EINVAL。
linux知识点总结 1 来自淘豆网www.taodocs.com转载请标明出处.