线程控制教学演示课件.pptVIP

  • 2
  • 0
  • 约5.1千字
  • 约 24页
  • 2018-10-30 发布于广东
  • 举报
. . 一般情况下,线程终止后,其终止状态一直保留到其它线 程调用pthread_join获取它的状态为止。 但是线程也可以被置为detach状态,这样的线程一旦终止 就立刻回收它占用的所有资源,而不保留终止状态。 不能对一个已经处于detach状态的线程调用pthread_join, 这样的调用将返回EINVAL。 Linux下线程控制 . 对一个尚未detach的线程调用pthread_join或 pthread_detach都可以把该线程置为detach状态,也就是 说,不能对同一线程调用两次pthread_join,或者如果已 经对一个线程调用了pthread_detach就不能再调用pthread_join了。 int pthread_detach(pthread_t tid); 返回值:成功返回0,失败返回错误号。 Linux下线程控制 . 线程可以安排它退出时需要调用的函数,这样的函数称为线程清理处理程序,线程可以建立多个清理处理程序。处理程序记录在栈中,也就是说它们的执行顺序与它们注册时的顺序相反。 pthread_cleanup_push()函数执行压栈(注册)清理函数的操作; pthread_cleanup_pop()函数执行从栈中删除清理函数的操作。 Linux下线程控制 . #include pthread.h 函数原型: void

文档评论(0)

1亿VIP精品文档

相关文档