c内存共享

c内存共享

int segment_id = shmget (shm_key, getpagesize (),IPC_CREAT | S_IRUSR | S_IWUSER);  
shared_memory = (char*) shmat (segment_id, 0, 0);  
shmctl (segment_id, IPC_STAT, &shmbuffer);  

int main(){  
        int shm_id;  
        int *share;  
        int num;  
        srand(time(NULL));  
        shm_id = shmget (1234, getpagesize(), IPC_CREAT);  
        if(shm_id == -1){  
            perror("shmget()");  
        }  
        share = (int *)shmat(shm_id, 0, 0);  
        while(1){  
            num = random() % 1000;  
            *share = num;  
            printf("write a random number %d\n", num);  
            sleep(1);  
        }  
        return 0;  
}

int main(){  
        int shm_id;  
        int *share;  
        shm_id = shmget (1234, getpagesize(), IPC_CREAT);  
        if(shm_id == -1){  
            perror("shmget()");  
        }  
        share = (int *)shmat(shm_id, 0, 0);  
        while(1){  
            sleep(1);  
            printf("%d\n", *share);  
        }  
        return 0;  
}  
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值