cli_c.c

来自「Linux大学上机源码学习」· C语言 代码 · 共 30 行

C
30
字号
#include "/root/djwc/sem_op.h"main(){ struct exchange{    char buf[BUFSIZ+80];    int seq; }shm; int shmid; unsigned char *retval; int producer,consumer,i; consumer=open_semaphore_set(ftok("consumer",0),1); init_a_semaphore(consumer,0,1); producer=open_semaphore_set(ftok("producer",0),1); init_a_semaphore(producer,0,1); shmid=shmget(ftok("shared",0),sizeof(struct exchange),0666|IPC_CREAT); retval=shmat(shmid,(unsigned char *)0,0); for(i=0;;i++){   semaphore_V(consumer);   semaphore_P(producer);   printf("data receive:%s,sequence:%d\n",shm.buf,shm.seq);   if(strncmp(shm.buf,"end",3)==0)       break;}rm_semaphore(producer);rm_semaphore(consumer);exit(0);}    

⌨️ 快捷键说明

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