client.c
来自「linux下面的文件锁和信号量的程序」· C语言 代码 · 共 36 行
C
36 行
#include "key.h"int main (int argc,char ** argv){ key_t key; int shmid; char * shmptr; COMM_TABLE * comm_reg; short count=1; key=ftok("~/tmp",1); /* get an existing share memory key */ if((shmid=shmget(key,sizeof(COMM_TABLE),SHM_R))==-1){ printf("shmget error\n"); exit(1); } /* attach the share memory to address space of current progress */ if((comm_reg=(COMM_TABLE *)shmat(shmid,0,SHM_R))==\ (COMM_TABLE *)(-1)){ printf("shmat error\n"); exit(2); } printf("Share memory id is %d:\n",shmid); printf("share memory attached from %x to %x\n",\ comm_reg,comm_reg+sizeof(COMM_TABLE)); while(!comm_reg->is_available){ printf("count %d\n",count); count++; sleep(1); } printf("message is %s \n",comm_reg->message); exit(0);}/* END OF FILE server.c */
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?