简单实现linux下c语言多线程编程,代码很简单,如下所示:
/************************************************************************* > File Name: module.c > Author: xiao5 > Mail: xiao5_zju@163.com > Created Time: 2016年02月03日 星期三 10时33分26秒 > Notes: pthread不是Linux的标准库,编译时要家-lpthread参数 ************************************************************************/ #include<stdio.h> #include<stdlib.h> #include<pthread.h> #define THREAD_NUM 10 // 定义线程的数目 /* 线程需要执行的函数 */ void *test(void *args) { printf("Thread ID %d: say 'Hello'.\n", args); return NULL; } int main() { int i, err; pthread_t child[THREAD_NUM]; // 线程标识符函数 for(i=0;i<THREAD_NUM;i++) { printf("Creating thread %d\n", i); /* * pthread_t *thread: 线程标识符 * pthread_attr_t *attr: 线程属性设置 * void *(*start_routine)(void*): 线程函数的起始地址 * void *args: 传递给线程函数的参数 */ err = pthread_create(&child[i], NULL, test, (void*)i); // 线程创建函数 if(err) { printf("Can't create thread %d\n", i); exit(0); } } /* 等待线程结束函数 */ for(i=0;i<THREAD_NUM;i++) { pthread_join(child[i], NULL); } printf("Thread initialize\n"); return 0; }
运行结果如下:
可以发现线程的异步运行!
相关推荐
三个多线程经典代码只需要5分 转别人的,没分下载了 混点分,请多多支持
线程如何去创建 ,多线程如何控制输出!互斥控制!
linux下C语言多线程编程实例.pdf
linux下C语言多线程编程实例.docx
linux下C语言多线程编程实例.doc
linux下C语言多线程编程实例[归纳].pdf
linux下C语言多线程编程实例 在单线程的程序里,有两种基本的数据:全局变量和局部变量。但在多线程程序里,还有第三种数据类型:线程数据(TSD: Thread-Specific Data)
18、Linux网络编程18——tcp并发服务器(多线程) 19、Linux网络编程——tcp高效并发服务器(select实现) 20、Linux网络编程——tcp高效并发服务器(poll实现) 21、Linux网络编程——tcp高效并发服务器(epoll实现...
此实例在windows 10系统上可以成功运行,可以修改一下,在linux上也可以运行,思路都是一样的。 说明:这个是个图书馆案例,默认100个座位,生产者与消费者各2个线程 (修改:加锁)
主要介绍了linux下的CC++多进程多线程编程实例详解的相关资料,需要的朋友可以参考下
于一体的160多段代码实例,帮助读者快速掌握在Linux平台下进行C语言程序开发的方法和技巧,并通 过一个原创的BT软件下载综合案例的讲解,引导读者具备开发大型应用程序的能力。 《LinuxC编程实战》内容翔实,主要...
主要介绍了C语言编写Linux守护进程实例,本文讲解了守护进程及其特性、守护进程的编程要点、守护进程代码实例等内容,需要的朋友可以参考下
《Linux C编程实战》系统地介绍了在Linux平台下用C语言进行程序开发的过程,集趣味性、实战性于一体的160多段代码实例,帮助读者快速掌握在Linux平台下进行C语言程序开发的方法和技巧,并通过一个原创的BT软件下载...
本书系统地介绍了在Linux平台下用C语言进行程序开发的过程,集趣味性、实战性于一体的160多段代码实例,帮助读者快速掌握在Linux平台下进行C语言程序开发的方法和技巧,并通过一个原创的BT软件下载综合案例的讲解,...