用多线程同步方法解决读者阅览问题 1) 每个读者进入阅览室后,即时显示“Entered” 及其线程自定义标识,还同时显示阅览室共有几名顾客及其所坐的位置。 2) 至少有10个读者,每人阅览至少3秒钟。 3) 多个读者须共享操作函数代码。 2总的设计思想及系统平台、语言、工具: 设计思想:程序设定的是10个读者和5个座位,对读者进行编号,依次进入阅览室读书,为每一座位列一表目,包括座号和读者号等,读者离开时要登出,即消掉登记的信息。 系统平台:LINUX 语言:C语言 工具:vi编辑器、gcc编译器 操作系统:linux操作系统 调试工具:edit、masm、link、debug. 3数据结构与模块说明(功能与流程图) 数据结构 int count=0 //记录阅览室读者数量 sem_t full //定义阅览室座位信号量 int seat[5] //用数组表示座位 pthread_t reader[10] //定义读者线程 pthread_mutex_t mutex //定义互斥量 3.2功能说明 可以标识读者,随机为读者设置在阅览室的读书时间 可以显示阅览室读者的人数 可以显示读者所坐的位置,座位状态以及列出空座位
标签: 多线程同步
上传时间: 2016-08-10
上传用户:zsjzc
邮件系统在邮件夹中给每个邮件用户预先提供了4个邮件箱(收件箱、发件箱、草稿箱、垃圾箱)和地址本、邮件箱管理、自定义文件夹。
上传时间: 2016-08-10
上传用户:zhyiroy
本软件包将每个openssl的apps程序做成一个可直接运行调试的VC Console 类型应用程序,方便研究和运用openssl的朋友,避免了openssl在windows下的编译问题,并且因为可以在VC环境下进行调试,使得对openssl的各个应用程序的流程更容易理解,这对openssl初学者尤其方便。希望大家多提意见。
上传时间: 2014-01-22
上传用户:stvnash
本书通过85个实例全面讲述了应用MFC进行Visual C++编程的思想。每个实例均以编写一个应用程序要走的步骤编写。
上传时间: 2016-08-12
上传用户:haohaoxuexi
编写一个非递归算法求有向无环图G的每个顶点出发的最长路径的长度(每条弧的长度均为1)并存入mpl域中。
上传时间: 2014-01-09
上传用户:kernaling
输入一个有n个叶结点的权植构造一棵哈夫曼树:(例如:n=8,权植为 5 29 7 8 14 23 3 11)根据哈夫曼树构造哈夫曼编码,用指向字符串的指针数组来存放,用叶子到树根逆向求每个结点的哈夫曼编码.
上传时间: 2016-08-13
上传用户:SimonQQ
地图着色问题 任何平面地图可以使用4种颜色给每个不同的城市着色,而保证相邻的城市着不同的颜色。
上传时间: 2013-12-13
上传用户:aig85
本书通过85个实例全面讲述了应用MFC进行Visual C++编程的思想。每个实例均以编写一个应用程序要走的步骤编写。全书共分四部分进行介绍,第一部分是基础知识,第二部分讲述用户界面的实例,第三部分讲述MFC内部处理方面的实例,第四部分讲述打包实例。全书基本上面向实例进行阐述,讲解透彻、易于掌握。本书既可作为初学者和大专院校师生的自学参考书,也可作为计算机软件开发人员的技术参考书。
上传时间: 2013-12-17
上传用户:luopoguixiong
(2)员工管理系统 问题描述:每个员工的信息包括:编号、姓名、性别、出生年月、学历、职务、电话、住址等。系统能够完成员工信息的查询、更新、插入、删除、排序等功能。 基本要求:排序:按不同关键字,对所有员工的信息进行排序;查询:按特定条件查找员工;更新,按编号对某个员工的某项信息进行修改;插入,加入新员工的信息;删除,按编号删除已离职的员工的信息。 选作内容:实现图形用户界面。
上传时间: 2016-08-19
上传用户:330402686
vhdl语言编写秒表程序 内含每个模块的源程序
上传时间: 2014-11-23
上传用户:hanli8870