实验二linux操作系统

实验二linux操作系统

ID:30863581

大小:642.06 KB

页数:22页

时间:2019-01-04

实验二linux操作系统_第1页
实验二linux操作系统_第2页
实验二linux操作系统_第3页
实验二linux操作系统_第4页
实验二linux操作系统_第5页
资源描述:

《实验二linux操作系统》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库

1、程序实验2:多线程编程实验实验周次_实验日期2014/4/20姓名张括学号20112435实验一(p284:thread.c)l^软件功能描述创建线程实际上就是确定调用该线程函数的入口点,通常使用的函数是pthread_create()o在线程创建以后,就开始运行相关的线程函数,在该函数运行完之后,该线程也就退出,这是线程退出一种方法。另一种退出线程的方法是使用函数pthread_exit(),这是线程的主动行为。本实验程序创建了3个线程,这3个线程重用一个函数,每个线程循环5次,随机等待1-lOs时间。2、

2、程序流程设计开始定义创建线稈数和每个线程中任结束3・部分程序代码注释(关键函数或代码)/thread.c/#include#include#include#defineTHREAD_NUMBER3#defineREPEAT_NUMBER5#defineDELAY_TIME_LEVELS10.0voidthrd_func(voidarg){intthrd_num=(int)arg;intdelay_time=0;intcount=0;printf(nT

3、hread%disstartingn,thrd_num);for(count=0;count

4、it(NULL);}intmain(void){pthread_tthreadlTHREAD.NUMBERJ;intno=0,res;voidthrd_ret;srand(time(NULL));for(no=0;no

5、tetreadssuccessWaitingforthreadstofinish..An");for(no=0;no

6、sedcacehrtsdra0efIS11ratsratsbbbbbbbbbb9990000000000nnn.Jj.□JJ.J.JjJJdddaaaeee012eeeonnne111V0000JJ.•d0ehddddsb0・nftntsh.

7、了三个线程,且每个线程中的5个任务循坏等待时间是随机的,这样任务到达的时间也是随机的,所以线程2中的任务可能会比线程1的任务线执行,即线程2可能会比线程1先运行结束。实验二(p287:ll-threadmutex・c)1、软件功能描述rti于线程共享进程的资源和地址空间,因此在对这些资源进行操作的时候,必须考虑到线程间资源访问的同步与互斥问题。本实验主要利用互斥锁机制,保证让每个线程对共享资源按顺序进行原子操作。用一种简单的加锁方法来控制对共亨资源的原子操作。互斥锁只有两种状态:上锁和解锁,可以把互斥锁看作某

8、种意义上的全局变量。同一时刻只能有一个线程掌握某个互斥锁,拥有上锁状态的线程能够对共享资源进行操作。若其他线程希望访问一个已经被上锁的互斥锁,则该线程就会挂起,直到上锁的线程释放掉互斥锁为止。互斥锁保证每个线程对共亭资源按序进行原子操作。2•程序流程设计定义创建线程数和每个线程屮任/threadmutex.c/#inelude#include#include

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

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

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