社区
Linux/Unix社区
帖子详情
关于共享内存的的问题~
bm1408
2006-05-11 09:22:14
最近在弄一个程序,要使用共享内存,要求很简单,就是父进程写进信息,子进程读出来
大家给一个例子吧
比如说:
struct student
{
int id;
char name[`11];
}STU[MAX];
父进程把这个结构体信息放入共享内存中,然后子进程读出并修改,
大家给个例子~~~
...全文
148
1
打赏
收藏
关于共享内存的的问题~
最近在弄一个程序,要使用共享内存,要求很简单,就是父进程写进信息,子进程读出来 大家给一个例子吧 比如说: struct student { int id; char name[`11]; }STU[MAX]; 父进程把这个结构体信息放入共享内存中,然后子进程读出并修改, 大家给个例子~~~
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
1 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
x86
2006-05-11
打赏
举报
回复
#include <stdlib.h>
#include <sys/shm.h>
#define ARRAY_SIZE 40000
#define MALLOC_SIZE 100000
#define SHM_SIZE 100000
#define SHM_MODE 0600 /* user read/write */
char array[ARRAY_SIZE]; /* uninitialized data = bss */
int
main(void)
{
int shmid;
char *ptr, *shmptr;
printf("array[] from %lx to %lx\n", (unsigned long)&array[0],
(unsigned long)&array[ARRAY_SIZE]);
printf("stack around %lx\n", (unsigned long)&shmid);
if ((ptr = malloc(MALLOC_SIZE)) == NULL)
printf("malloc error\n");
printf("malloced from %lx to %lx\n", (unsigned long)ptr,
(unsigned long)ptr+MALLOC_SIZE);
if ((shmid = shmget(IPC_PRIVATE, SHM_SIZE, SHM_MODE)) < 0)
printf("shmget error\n");
if ((shmptr = shmat(shmid, 0, 0)) == (void *)-1)
printf("shmat error\n");
printf("shared memory attached from %lx to %lx\n",
(unsigned long)shmptr, (unsigned long)shmptr+SHM_SIZE);
if (shmctl(shmid, IPC_RMID, 0) < 0)
printf("shmctl error\n");
exit(0);
}
Android专用驱动
Ashmem是一个
共享内存
驱动,它与传统的
共享内存
相比,最大的特点是它是通过文件描述符来描述的,并且可以动态地进行分块管理。动态分块管理的目的是可以将部分不再使用了的内存交回给系统,非常适合内存较小的移动...
python
共享内存
SharedMemory
该模块提供了一个SharedMemory类,用于分配和管理多核或对称多处理器(SMP)机器上进程间的
共享内存
。为了协助管理不同进程间的
共享内存
生命周期,multiprocessing.managers模块也提供了一个BaseManager的子类:...
量化IT工程师入门
QauntFabric交易系统中XMarketCenter和XQuant之间行情数据交互使用
共享内存
消息队列进行IPC通信,XTrader和XQuant之间报单、撤单、订单回报交互使用
共享内存
消息队列进行IPC通信,XTrader与XRiskJudge的风控请求和...
Linux进程间通信——使用
共享内存
下面将讲解进程间通信的另一种方式,使用
共享内存
。 一、什么是
共享内存
顾名思义,
共享内存
就是允许两个不相关的进程访问同一个逻辑内存。
共享内存
是在两个正在运行的进程之间共享和传递数据的一种非常有效的方式...
进程间通信——
共享内存
(Shared Memory)
共享内存
是System V版本的最后一个进程间通信方式。
共享内存
,顾名思义就是允许两个不相关的进程访问同一个逻辑内存,
共享内存
是两个正在运行的进程之间共享和传递数据的一种非常有效的方式。不同进程之间共享的内存...
Linux/Unix社区
23,124
社区成员
74,508
社区内容
发帖
与我相关
我的任务
Linux/Unix社区
Linux/Unix社区 应用程序开发区
复制链接
扫一扫
分享
社区描述
Linux/Unix社区 应用程序开发区
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章