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

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

資源簡(jiǎn)介

參考教材中的生產(chǎn)者消費(fèi)者算法,創(chuàng)建5個(gè)進(jìn)程,其中兩個(gè)進(jìn)程為生產(chǎn)者進(jìn)程,3個(gè)進(jìn)程為消費(fèi)者進(jìn)程。一個(gè)生產(chǎn)者進(jìn)程試圖不斷地在一個(gè)緩沖中寫(xiě)入大寫(xiě)字母,另一個(gè)生產(chǎn)者進(jìn)程試圖不斷地在緩沖中寫(xiě)入小寫(xiě)字母。3個(gè)消費(fèi)者不斷地從緩沖中讀取一個(gè)字符并輸出。為了使得程序的輸出易于看到結(jié)果,仿照的實(shí)例程序,分別在生產(chǎn)者和消費(fèi)者進(jìn)程的合適的位置加入一些隨機(jī)睡眠時(shí)間。

資源截圖

代碼片段和文件信息

#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#define?N?1000
using?namespace?std;

int?buff;
int?fulll;
int?*full2;
char?*buff1;
void?plusORde(int?numint?number){

????full2[num]=full2[num]+number;
}

void?down(int?*num)
{
????while(true)
????{
????????if(*num>0)
????????{
????????????*num=*num-1;
????????????break;
????????}
????????sleep(1);
????}
}

void?up(int?*num)
{
????*num=*num+1;
}

char?produce_item_low()
{
????char?ch=((rand()?+7)%?26+97);
????return?ch;
}
char?produce_item_lar()
{
????char?ch=(rand()?%?26+65);
????return?ch?;
}


char?remove_item()
{


????char?ch=buff1[full2[1]-1];
buff1[full2[1]-1]=‘\0‘;
????down(&full2[1]);

????return?ch;
}
void?printfCharArray(char?*chararrayint?len){

????printf(“?flag:?%d??len:?%d?\n“full2[4]len);
}
void?insert_item(char?x)
{
????char?xx[2];
????xx[0]=x;
????xx[1]=‘\0‘;
????strcat(buff1xx);

????????up(&full2[1]);
}
void?consume_item(char?item)
{
????printf(“\n?remove:%c?“item);
????printfCharArray(buff1full2[1]);
}
void?producer(int?flag)
{
char?item;
while?(true)
{
???????????if(full2[4]>200)sleep(

評(píng)論

共有 條評(píng)論

相關(guān)資源