?? shm.c
字號:
#include<sys/types.h>#include<sys/msg.h>#include<sys/ipc.h>#define SHMKEY 75 /*定義共享區(qū)關(guān)鍵詞*/int shmid,i;int *addr; CLIENT(){ int i; do{ shmid=shmget(SHMKEY,100,0777); } while(shmid==-1); printf("client get shmid=%d\n",shmid); addr=shmat(shmid,0,0); /*共享區(qū)起始地址為addr*/ for(i=9;i>=0;i--) { while(*addr!= -1); printf("(client)sent\n"); /*打?。╟lient)sent*/ *addr=i; /*把i賦給addr*/ } exit(0);} SERVER(){ shmid=shmget(SHMKEY,100,0777|IPC_CREAT); /*創(chuàng)建共享區(qū)*/ printf("server creat shmid=%d\n",shmid); addr=shmat(shmid,0,0); /*共享區(qū)起始地址為addr*/ do { *addr=-1; while(*addr==-1); printf("(server)received\n"); /*服務(wù)進(jìn)程使用共享區(qū)*/ } while(*addr); shmctl(shmid,IPC_RMID,0); exit(0); } main(){ if(fork())SERVER(); else CLIENT(); wait(0); wait(0);}
?? 快捷鍵說明
復(fù)制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -