C语言多线程的一个简单例子
Posted 根号5减1除以2
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了C语言多线程的一个简单例子相关的知识,希望对你有一定的参考价值。
多线程的一个简单例子:
#include <stdio.h> #include <stdlib.h> #include <string.h> #include <unistd.h> #include <pthread.h> void * print_a(void *); void * print_b(void *); int main(){ pthread_t t0; pthread_t t1; // 创建线程A if(pthread_create(&t0, NULL, print_a, NULL) == -1){ puts("fail to create pthread t0"); exit(1); } if(pthread_create(&t1, NULL, print_b, NULL) == -1){ puts("fail to create pthread t1"); exit(1); } // 等待线程结束 void * result; if(pthread_join(t0, &result) == -1){ puts("fail to recollect t0"); exit(1); } if(pthread_join(t1, &result) == -1){ puts("fail to recollect t1"); exit(1); } return 0; } // 线程A 方法 void * print_a(void *a){ for(int i = 0;i < 10; i++){ sleep(1); puts("aa"); } return NULL; } // 线程B 方法 void * print_b(void *b){ for(int i=0;i<20;i++){ sleep(1); puts("bb"); } return NULL; }
打印:
aa
bb
aa
aa
bb
...
以上是关于C语言多线程的一个简单例子的主要内容,如果未能解决你的问题,请参考以下文章
Visual Studio 中的vc++ 2005创建一个C++的项目,求有多线程的例子!!!