Chinaunix首页 | 论坛 | 博客
  • 博客访问: 2150456
  • 博文数量: 438
  • 博客积分: 3871
  • 博客等级: 中校
  • 技术积分: 6075
  • 用 户 组: 普通用户
  • 注册时间: 2011-09-10 00:11
个人简介

邮箱: wangcong02345@163.com

文章分类

全部博文(438)

文章存档

2017年(15)

2016年(119)

2015年(91)

2014年(62)

2013年(56)

2012年(79)

2011年(16)

分类: LINUX

2015-08-04 15:20:08

1. detachstate
  1. //设置线程的detachstate
  2. int pthread_attr_setdetachstate(pthread_attr_t *attr, int detachstate);
  3. //获取线程的detachstate
  4. int pthread_attr_getdetachstate(pthread_attr_t *attr, int *detachstate);
detach_state有两种:
PTHREAD_CREATE_DETACHED
PTHREAD_CREATE_JOINABLE
joinable:能够被其他线程收回其资源和杀死;在被回收之前,其资源是不释放的
detached:是不能被其他线程回收或杀死的,其资源在终止时由系统自动释放
2.代码:
  1. cong@msi:/work/test/thread/5attr$ cat attr.c
  2. #include "utils.h"
  3. void* read_thread(void* arg)
  4. {
  5.     printf("read_thread\n");
  6.     return NULL;
  7. }

  8. int main ( int argc, char *argv[] )
  9. {
  10.     pthread_t thread_id;
  11.     pthread_attr_t attr;
  12.     void* thread_result;
  13.     int status;

  14.     pthread_attr_init(&attr);
  15.     pthread_attr_setdetachstate(&attr, PTHREAD_CREATE_DETACHED);
  16.     status = pthread_create(&thread_id, &attr, read_thread, NULL);
  17.     
  18.     //status = pthread_join(thread_id, &thread_result);
  19.     dbmsg("thread1 over");
  20.     return EXIT_SUCCESS;
  21. }
5attr.rar (下载后改名为5attr.tar.gz)



阅读(1161) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~