程序实验:-多线程编程---实验报告

程序实验:-多线程编程---实验报告

ID:12304655

大小:525.39 KB

页数:20页

时间:2018-07-16

程序实验:-多线程编程---实验报告_第1页
程序实验:-多线程编程---实验报告_第2页
程序实验:-多线程编程---实验报告_第3页
程序实验:-多线程编程---实验报告_第4页
程序实验:-多线程编程---实验报告_第5页
资源描述:

《程序实验:-多线程编程---实验报告》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、嵌入式操作系统—多线程-实验报告(11-多线程编程)程序实验二:11-多线程编程实验专业班级实验日期5.21姓名学号实验一(p284:11-thread.c)1、软件功能描述创建3个线程,让3个线程重用同一个执行函数,每个线程都有5次循环,可以看成5个小任务,每次循环之间会有随即等待时间(1-10s)意义在于模拟每个任务到达的时间是随机的没有任何的特定规律。2、程序流程设计3.部分程序代码注释(关键函数或代码)#include#include嵌入式操作系统—多线程-实验报告

2、(11-多线程编程)#include#defineT_NUMBER3#defineP_NUMBER5#defineTIME10.0void*thrd_func(void*arg){intthrd_num=(int)arg;intdelay_time=0;intcount=0;printf("Thread%disstaraing",thrd_num);for(count=0;count

3、MAX))+1;sleep(delay_time);printf("tTH%d:job%ddelay=%d",thrd_num,count,delay_time);}printf("%dfinished",thrd_num);pthread_exit(NULL);}intmain(){pthread_tthread[T_NUMBER];intno=0,res;void*thrd_ret;srand(time(NULL));for(no=0;no

4、eate(&thread[no],NULL,thrd_func,(void*)no);if(res!=0){printf("Creayth%dfaild",no);exit(res);}}printf("successwaiting");for(no=0;no

5、intf("T%djoinedfaild",no);}}return0;}4.编译、运行方法及结果(抓屏)5.结果分析由运行结果可以看出,创建线程、释放资源按照顺序,而每个线程的运行和结束是独立与并行的。嵌入式操作系统—多线程-实验报告(11-多线程编程)嵌入式操作系统—多线程-实验报告(11-多线程编程)实验二(p287:11-thread_mutex.c)1、软件功能描述在试验1的基础上通过互斥锁,使原本独立,无序的多个线程能够按顺序进行2、程序流程设计3.部分程序代码注释(关键函数或代码)#includ

6、e#include#include#defineTHREAD_NUMBER3/*线程数*/#defineREPEAT_NUMBER3/*每个线程的小任务数*/#defineDELAY_TIME_LEVELS10.0/*小任务间的最大时间间隔*/pthread_mutex_tmutex;void*thrd_func(void*arg)//线程函数例程{intthrd_num=(int)arg;intdelay_time=0,count=0;intres;/

7、/互斥锁上锁res=pthread_mutex_lock(&mutex);if(res){嵌入式操作系统—多线程-实验报告(11-多线程编程)printf("Thread%disstarting",thrd_num);pthread_exit(NULL);}printf("Thread%disstarting",thrd_num);for(count=0;count

8、_MAX))+1;sleep(delay_time);printf("tThread%d:job%ddelay=%d",thrd_num,count,delay_time);}printf("Thread%dfinished",thrd_num);pthread_exit(NULL);}intmain(void){pthread_tthread[THREAD_N

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。