xxxx18一60岁hd中国/日韩女同互慰一区二区/西西人体扒开双腿无遮挡/日韩欧美黄色一级片 - 色护士精品影院www

  • 大小: 3KB
    文件類型: .cpp
    金幣: 1
    下載: 0 次
    發(fā)布日期: 2021-06-09
  • 語(yǔ)言: C/C++
  • 標(biāo)簽: 進(jìn)程??同步??互斥??

資源簡(jiǎn)介

一個(gè)簡(jiǎn)單的有關(guān)于生產(chǎn)者和消費(fèi)者問題的實(shí)例程序

資源截圖

代碼片段和文件信息

#include?“windows.h“
#include?
#include?

const?unsigned?short?BUFFER_SIZE?=?10;?
short?writer_id?=?0;?
short?reader_id?=?0;?
short?in?=?0;?
short?out?=?0;?

int?buffer[BUFFER_SIZE];?
bool?continu?=?true;?
HANDLE?hmutex;?
HANDLE?hfullsemaphore;?
HANDLE?hemptysemaphore;?

double?eRandom(int?upLimit);
typedef?struct
{ int?data;
}INTEGER;

void?Reader()
{
??reader_id=buffer[out];
??out=(out+1)%BUFFER_SIZE;
}

void?Writer()
{
???buffer[in]=writer_id;
???in=(in+1)%BUFFER_SIZE;
}
DWORD?WINAPI?reader(LPVOID?lppara)
{
while(continu){
WaitForSingleobject(hemptysemaphoreINFINITE);
WaitForSingleobject(hmutexINFINITE);
????if(reader_id==10)
????return?0;
int?tNo=((INTEGER*)lppara)->data;
printf(“第?%d?個(gè)讀者讀出?%d?\n“tNo++reader_id);

int?sleepTime=20*(int)eRandom(50+tNo);
Sleep(sleepTime);
??
Reader();

ReleaseMutex(hmutex);
ReleaseSemaphore(hfullsemaphore1NULL);
}
return?0;
}


DWORD?WINAPI?writer(LPVOID?lppara)
{
while(continu){
WaitForSingleobject(hfullsemaphoreINFINITE);???
WaitForSingleobject(hmutexINFINITE);
????????if(writer_id==10)
????????return?0;
???
int?tNo=((INTEGER*)lppara)->data;
printf(“第?%d?個(gè)寫入者寫入?%d?\n“tNo++writer_id);
int?sleepTime=10*(int)eRandom(50+tNo);
Sleep(sleepTime);

Writer();

ReleaseMutex(hmutex);

評(píng)論

共有 條評(píng)論

相關(guān)資源