参考:http://blog.csdn.net/ithomer/article/details/5921003
参考:http://blog.csdn.net/wylwyl1130/article/details/1131715
参考:http://blog.csdn.net/china_video_expert/article/details/7360569
分离式线程:http://deepfuture.iteye.com/blog/749971
#include <stdio.h>
#include <pthread.h>
#include <unistd.h>
void *fun1(void *ptr)
{
int i = 0;
for(i = 0;i<2;++i)
{
printf("shun\n");
sleep(1);
}
return NULL;
}
void *fun2(void *ptr)
{
int i = 0;
for(i = 0;i<2;++i)
{
printf("com\n");
sleep(1);
}
return NULL;
}
void *fun3(void *ptr)
{
int i = 0;
for(i = 0;i<2;++i)
{
printf("hello world\n");
sleep(1);
}
return NULL;
}
int main(void)
{
//普通线程
pthread_t pthread3;
pthread_create(&pthread3,NULL,fun3,NULL);
pthread_join(pthread3,NULL);//阻塞
//通过线程属性直接设置
pthread_t pthread1;//1
pthread_attr_t attr;//2
pthread_attr_init(&attr);//3
pthread_attr_setdetachstate(&attr,PTHREAD_CREATE_DETACHED);//4
pthread_create(&pthread1,&attr,fun1,NULL);//5
//动态设置分离线程
pthread_t pthread2;
pthread_create(&pthread2,NULL,fun2,NULL);
pthread_detach(pthread2);
sleep(1);
return 0;
}