• 大小: 9KB
    文件类型: .rar
    金币: 1
    下载: 0 次
    发布日期: 2021-06-05
  • 语言: 其他
  • 标签:

资源简介

有关银行家算法,用C++实现,整个系统可以直接使用。

资源截图

代码片段和文件信息


#include “sue.h“

int               g_Readercount=0;      //读者数(全局变量)初始化为0
CRITICAL_SECTION  cs_WriteCs;       //写临界区对象
CRITICAL_SECTION  cs_ReadCs;        //读临界区对象


void main(void)
{
FILE *pFile=NULL;
if((pFile=fopen(“c:\\sue.txt““w“))/*建立一个新文本文件*/==NULL)
{
cout<<“Cannot create this file!“< exit(0);     //如果创建文件失败则提示
}
    fclose(pFile); //关闭文件

    InitializeCriticalSection(&cs_WriteCs);
    InitializeCriticalSection(&cs_ReadCs);   ///初始化临界区对象

    HANDLE hThread[5];
    DWORD  IDThread[5];  /////创建线程////////
    for(int i=0; i<5; i++)
{
if(i==0)
{
hThread[i]=CreateThread(NULL
                         0
 (LPTHREAD_START_ROUTINE)AddThread
                                       NULL
 0
          &IDThread[i]); //添加记录线程
}
else if(i==1)
{
hThread[i]=CreateThread(NULL
                         0
 (LPTHREAD_START_ROUTINE)DeleteThread
                                       NULL
 0
 &IDThread[i]); //删除记录线程 
}
else 
{
hThread[i]=CreateThread(NULL
                         0
 (LPTHREAD_START_ROUTINE)ReadThread
                                     (void *)i
 0
 &IDThread[i]); //读文件线程
}

         if (hThread[i] == NULL)   //线程创建失败
    cout << “CreateThread error“ << i << endl;
     else
    cout << “CreateThread: “ << i << endl;
}
cout<    
//等待线程结束
WaitForMultipleobjects(5hThreadTRUEINFINITE);

DeleteCriticalSection(&cs_WriteCs);
DeleteCriticalSection(&cs_ReadCs);    ////删除临界区对象
}

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----

     目录          0  2004-12-16 13:15  ossue(VC++工程)

     文件      58368  2006-03-05 23:39  ossue(VC++工程)\ossue.ncb

     文件        253  2004-12-15 23:23  ossue(VC++工程)\sue.h

     文件       1348  2006-03-05 23:01  ossue(VC++工程)\ossue.plg

     文件       4389  2004-12-15 23:27  ossue(VC++工程)\ossue.dsp

     文件        533  2004-12-16 13:15  ossue(VC++工程)\ossue.dsw

     目录          0  2004-12-15 23:22  ossue(VC++工程)\Debug

     文件       1715  2004-12-16 13:19  ossue(VC++工程)\mult.cpp

     文件       5382  2004-12-16 13:22  ossue(VC++工程)\sue.cpp

     文件          2  2006-03-05 23:01  ossue(VC++工程)\sue.txt

     文件      53760  2006-03-05 23:39  ossue(VC++工程)\ossue.opt

----------- ---------  ---------- -----  ----

               125968                    12


评论

共有 条评论