is being running at ubunte linux system.
dusibo hunan yongzhou
#include <stdio.h>
#include <pthread.h>
#include <unistd.h>
static int run=1;
static int retvalue;
void *start_routine(void *arg)
{
int *running=(int *)arg;
printf("child thread initation complete %d/n",*running);
while(*running)
{
printf("child thread running/n");
usleep(1);
}
printf("child thread out/n");
retvalue=8;
pthread_exit((void**)retvalue);
}
int main(void)
{
pthread_t pt;
int ret=-1;
int time=3;
int i=0;
int *ret_join=NULL;
ret=pthread_create(&pt,NULL,start_routine,&run);
if(ret!=0)
{
printf("build a thread/n");
return 1;
}
usleep(1);
for(;i<time;i++)
{
printf("root thread print/n");
usleep(1);
}
run=0;
pthread_join(pt,(void**)ret_join);
printf("bak value is %d/n",*ret_join);
return 0;
}
杜思波 2011 湖南
本文提供了一个在Ubuntu Linux系统中使用C语言创建和管理线程的示例程序。该程序展示了如何初始化子线程、实现主线程与子线程间的同步以及返回值的处理。通过具体代码实现了子线程的运行、停止及退出。

被折叠的 条评论
为什么被折叠?



