Chinaunix首页 | 论坛 | 博客
  • 博客访问: 7724568
  • 博文数量: 961
  • 博客积分: 15795
  • 博客等级: 上将
  • 技术积分: 16612
  • 用 户 组: 普通用户
  • 注册时间: 2010-08-07 14:23
文章分类

全部博文(961)

文章存档

2016年(1)

2015年(61)

2014年(41)

2013年(51)

2012年(235)

2011年(391)

2010年(181)

分类: C/C++

2010-12-11 09:46:21

#include <stdio.h>
#include <stdlib.h>
#include <pthread.h>

void mythread()
{
    printf("thread is pthread:n");
    sleep(1);
    printf("thread is exitingn");
    int thread_finished = 1;
    pthread_exit(NULL);
}

int main()
{
    pthread_t id;
    pthread_attr_t thread_attr;
    int ret,thread_finished;
    ret = pthread_attr_init(&thread_attr);
    if(ret!=0)
    {
        printf("pthread_attr_init errorn");
        exit(1);
    }
    
    ret = pthread_attr_setdetachstate(&thread_attr,PTHREAD_CREATE_DETACHED);
    if(ret!=0)
    {
        printf("pthread_attr_setdetachstate errorn");
        exit(1);
    }
    
    ret = pthread_create(&id,&thread_attr,(void *)mythread,NULL);
    if(ret!=0)
    {
        printf("create pthread errorn");
        exit(1);
    }    
    
    while(!thread_finished)
    {
        printf("waitint for thread finished..n");
        sleep(1);
    }
    printf("Donen");
    return 0;    
}



阅读(1754) | 评论(0) | 转发(4) |
0

上一篇:线程终止

下一篇:线程同步(互斥量)

给主人留下些什么吧!~~