您的位置:首页 > 运维架构 > Linux

关于Linux线程的一些小测试(1)

2014-10-08 17:37 288 查看
代码1

#include <stdio.h>
#include <stdlib.h>
#include <pthread.h>
int a=0;
void thr(void)
{
while(a<1010)
{
printf("this is a pthread %d \n",a++);
//sleep(1);
}
}
int main()
{
pthread_t id;
int i,ret;
ret=pthread_create(&id,NULL,(void *)thr,NULL);
if (ret)
{
printf("create pthread filed\n");
exit(1);
}
printf("%s\n","this is main thread");
printf("%s\n","i am waiting for sub thread join");
a+=1000;
pthread_join(id,NULL);
printf("%s\n","sub thread returned");
return 0;
}


某一次运行的结果是

this is main thread

i am waiting for sub thread join

this is a pthread 0

this is a pthread 1001

this is a pthread 1002

this is a pthread 1003

this is a pthread 1004

this is a pthread 1005

this is a pthread 1006

this is a pthread 1007

this is a pthread 1008

this is a pthread 1009

sub thread returned

另外一次运行的结果是

this is main thread

this is a pthread 0

this is a pthread 1

this is a pthread 2

i am waiting for sub thread join

this is a pthread 3

this is a pthread 1004

this is a pthread 1005

this is a pthread 1006

this is a pthread 1007

this is a pthread 1008

this is a pthread 1009

sub thread returned
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: