注册 登录
编程论坛 Linux系统管理

进程通信--邮箱机制,共享存储区问题

hebinjie4 发布于 2014-04-21 21:06, 5473 次点击
while(1)
{
    printf("输入命令:");
    scanf("%c",&c);
    if(c=='r')
{
    printf("port b receive..");
    p(Bfull);
    printf("port b receive mail %s sucessfully\n",addr->ch);
    addr++;
    shmdt(addr);
    v(Bavail);
}

程序中addr是内存映射地址,就是不明白为什么要   
addr++;
shmdt(addr);
为什么++后,再断开联系?

原意是想实现邮箱通信,共享存储区有3个空间可以存3个数。
3 回复
#2
hebinjie42014-04-21 22:07
求回复啊!! 急!!!
#3
hebinjie42014-04-22 13:26
都没人吗
#4
Andrew_Lee2014-05-05 14:48
单纯这样看的话,是有点不太好看懂,直接看代码的话应该就是地址后移了。
1