⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 me_producer.c

📁 这是在linux环境下C++做的生产者和消费者问题
💻 C
字号:
/******************************producer.c**********************************/#include "ipc.h"int main(int arc,char *argv[]){key_t buff_key=101;/*material's key*/    int count=0;    buff_num=sizeof i;    buff_flag=IPC_CREAT|0644;    buff_key=101;    full_key=201;    empty_key=202;    pro_ex_key=301;    cons_ex_key=302;    full_value=0;    empty_value=1;    pro_ex_value=1;    cons_ex_value=1;    sem_flag=IPC_CREAT|0644;    buff_ptr=(int*)set_shm(buff_key,buff_num,buff_flag);       full_sem=set_sem(full_key,full_value,sem_flag);    empty_sem=set_sem(empty_key,empty_value,sem_flag);    pro_ex_sem=set_sem(pro_ex_key,pro_ex_value,sem_flag);    while(count++<12){        sleep(2);        operationP(empty_sem);        operationP(pro_ex_sem);        printf("producer %d sending %d\n",getpid(),((buff_ptr[0]+1)%3));        buff_ptr[0]=(buff_ptr[0]+1)%3;        operationV(full_sem);        operationV(pro_ex_sem);         }} 

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -