荟萃馆

位置:首页 > 计算机 > C语言

c语言线程终止练习示例

C语言3.14W

c语言线程

c语言线程终止练习示例

代码如下:

#include

#include

#include

void *t1(void *args)

{

return (void *) 0;

}

void *t2(void *args)

{

printf("thread 2 param[args] = %dn", args);

pthread_exit((void *) 3);

}

void *t3(void *args) {

while(1)

{

printf("thread 3 is workingn");

sleep(1);

}

}

int main(int argc, char *argv[])

{

pthread_t thread;

int err;

void *status;

printf("creating thread 1n");

err = pthread_create(&thread, NULL, t1, NULL);

if(err)

{

printf("Can not created thread 1n");

exit(-1);

}

pthread_join(thread, &status);

printf("thread 1 exit return code %dnn", status);

printf("creating thread 2n");

err = pthread_create(&thread, NULL, t2, (void *) 9);

if(err)

{

printf("Can not created thread 2n");

exit(-2);

}

pthread_join(thread, &status);

printf("thread 2 exit return code %dnn", status);

printf("creating thread 3n");

err = pthread_create(&thread, NULL, t3, NULL);

if(err)

{

printf("Can not created thread 3n");

exit(-3);

}

sleep(10);

pthread_cancel(thread);

pthread_join(thread, &status);

printf("thread 3 exit return code %dn", status);

return 1;

}