设为首页  
联系我们  
加入收藏  
网页制作 冲浪宝典 图形图像 操作系统 软件教学 编程开发 认证考试 安全技术 站长专区 文学驿站 娱乐天地 游戏天地 办公软件
文章搜索
您的位置: 首页 >> 文章首页 >> 编程开发 >> 其他开发语言 >> 操作系统实验进程同步--读者优先
精品推荐
其他开发语言点击TOP10
·数字小键盘指法练习
·用C语言编通讯录程序(初学者级别的)
·Modem 常用AT指令集
·单片机模拟I2C总线及24C02(I2C EEPROM)读写实例(源代码)
·C++经典电子书下载
·Thinking in C++ 简体中文第二版
·debug和release的区别
·error LNK2001: unresolved external symbol __ftol2 错误解决
·C库函数手册
·一个简单的C语言编译器
编程开发点击TOP10
·数字小键盘指法练习
·ASP.NET 程序中常用的三十三种代码
·用C语言编通讯录程序(初学者级别的)
·我写的Java学生成绩管理系统源代码
·CHK文件恢复工具
·Modem 常用AT指令集
·java笔试题
·异常java.sql.SQLException: Io exception:The Network Adapter could not establish connection
·单片机模拟I2C总线及24C02(I2C EEPROM)读写实例(源代码)
·C++经典电子书下载
精选专题

操作系统实验进程同步--读者优先

作者: 来源:网络文章 时间:2005-12-17 1:11:19

操作系统实验进程同步--读者优先(3) {
 int  i=0;
 int  *pList = pPersonLists;
 bool Ret;
 while(pList[0] != END)
 {
  switch(pList[1])
  {
  case R:
   Ret = CreateReader(pList[2],pList[3],pList[0]);
   break;
  case W:
   Ret = CreateWriter(pList[2],pList[3],pList[0]);
   break;
  }
  if(!Ret)
   printf("Create Person %d is wrong\n",pList[0]);
  pList += 4; // move to next person list
 }
}

DWORD  WINAPI ReaderProc(LPVOID lpParam)
{
 Person *pPerson = (Person*)lpParam;
 // wait for the start time
 while(g_CurrentTime != pPerson->m_nStartTime)
 {
 }

 printf("Reader %d is Requesting ...\n",pPerson->m_nID);
    WaitForSingleObject(g_hReadSemaphore,INFINITE);
    if(g_NumOfReading ==0)
    {
        WaitForSingleObject(g_hWriteSemaphore,INFINITE);
    }
    g_NumOfReading++;
 ReleaseSemaphore(g_hReadSemaphore,1,NULL);
 // modify the reader's real start time
 pPerson->m_nStartTime = g_CurrentTime;

 printf("Reader %d is Reading the Shared Buffer...\n",pPerson->m_nID);
 while(g_CurrentTime <= pPerson->m_nStartTime + pPerson->m_nWorkTime)
 {
  // ..  perform read operations
 }
 printf("Reader %d is Exit...\n",pPerson->m_nID);
 
 WaitForSingleObject(g_hReadSemaphore,INFINITE);
    g_NumOfReading--;
    if(g_NumOfReading == 0)
 {
  ReleaseSemaphore(g_hWriteSemaphore,1,NULL);
 }
 
 ReleaseSemaphore(g_hReadSemaphore,1,NULL);
   
 ExitThread(0);
 

共5页 9 7 [1] [2] [3] [4] [58 :>

操作系统实验进程同步--读者优先 相关文章:
操作系统实验进程同步--读者优先 相关软件:
特别声明:本站除部分特别声明禁止转载的专稿外的其他文章可以自由转载,但请务必注明出处和原始作者。文章版权归文章原始作者所有。对于被本站转载文章的个人和网站,我们表示深深的谢意。如果本站转载的文章有版权问题请联系编辑人员,我们尽快予以更正。
转载请注明来源:http://www.xgdown.com