资源简介
操作系统信号量PV经典问题:读者写者,优先级是谁忘了,最经典的那个
C++编写
代码片段和文件信息
#include
#include
#include
using namespace std;
#define random (rand()*10000)/RAND_MAX
int count=0; //用于记录当前读者数量
DWORD a;
HANDLE rw=CreateSemaphore(NULL11“rw“); //保证读者和写者互斥访问
HANDLE w=CreateSemaphore(NULL11“w“); //用于实现“写优先”
HANDLE mutex=CreateMutex(NULLFALSE“mutex“); //用于保护更新count变量的互斥
void reading()
{ Sleep(10);
cout<<“The reader begin reading.“< Sleep(10000);
}
void writing()
{ Sleep(10);
cout<<“The writer begin writing.“< Sleep(10000);
}
DWORD WINAPI Threadwriter(LPVOID lpParam)
{ while(1){
WaitForSingleobject(wINFINITE); //在无写进程请求时进入
WaitForSingleobject(rwINFINITE); //互斥访问共享文件
writing(); //写入
Re
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 249931 2011-12-30 11:54 Task 3.2-Reader and Writer\Debug\reader&write.exe
文件 373116 2011-12-30 11:54 Task 3.2-Reader and Writer\Debug\reader&write.ilk
文件 53169 2011-12-30 11:54 Task 3.2-Reader and Writer\Debug\reader&write.obj
文件 5316280 2011-12-30 11:51 Task 3.2-Reader and Writer\Debug\reader&write.pch
文件 574464 2011-12-30 11:54 Task 3.2-Reader and Writer\Debug\reader&write.pdb
文件 189440 2011-12-30 11:54 Task 3.2-Reader and Writer\Debug\vc60.idb
文件 143360 2011-12-30 11:54 Task 3.2-Reader and Writer\Debug\vc60.pdb
文件 2076 2011-12-30 11:54 Task 3.2-Reader and Writer\reader&write.cpp
文件 3475 2011-12-30 11:37 Task 3.2-Reader and Writer\reader&write.dsp
文件 532 2011-12-30 11:55 Task 3.2-Reader and Writer\reader&write.dsw
文件 33792 2011-12-30 11:55 Task 3.2-Reader and Writer\reader&write.ncb
文件 48640 2011-12-30 11:55 Task 3.2-Reader and Writer\reader&write.opt
文件 784 2011-12-30 11:54 Task 3.2-Reader and Writer\reader&write.plg
目录 0 2011-12-30 11:54 Task 3.2-Reader and Writer\Debug
目录 0 2011-12-30 11:55 Task 3.2-Reader and Writer
----------- --------- ---------- ----- ----
6989059 15
相关资源
- 51实时操作系统程序(easy51os)
- 基于Aurix的AUTOSAR多核操作系统的实现
- 《嵌入式实时操作系统uCOS-II》邵贝贝
- 自制操作系统.docx(附源码地址)
- 操作系统原理及设计原则(Operating
- GeekOS操作系统的研究和实现.doc
- C++ 用信号量实现线程同步
- 操作系统课程设计
- C++ 判断操作系统类型
- Linux操作系统下C语言编程入门.pdf
- 《一步一步写嵌入式操作系统 ARM编程
- 嵌入式实时操作系统uc_os-II原理及应用
- c++ 实验:可变分区管理
- 《计算机操作系统(第三版)》pdf 高
- 计算机操作系统 第三版 汤子瀛高清
- 操作系统-银行家算法
- 操作系统FAT文件系统源程序
- 操作系统课程设计——一动态分区分
- C语言 GetVersion和GetVersionEx API函数获取
- 一个c++环形队列缓冲区
- 二级文件系统
- 操作系统存储管理地址转换和产生缺
- 进程调度_抢占式短作业优先算法+内存
- 操作系统~内存动态分配与释放
- OS磁盘空闲区管理-C语言实现
- 东华大学 操作系统实验 进程调度 含
- 自制操作系统源码
- 武汉大学操作系统实验
- 操作系统模拟移臂调度算法c语言代码
- 操作系统课设报告
评论
共有 条评论