情景如下:
进程1由三方代码写了一些数据在内存mem中
对该模块二次开发, 无法修改已有代码, 但是可以在进程内读取这些数据
需求是这些数据需要共享出来, 由多个不同的进程读取(只读不写)
之前的实现是进程1中shmget()创建了一个共享内存shm, 实时从mem复制数据到shm
进程2中就可以shmat()映射到同一共享内存
问题:
因为数据更新频率很高, 这种实现方式效率较低
有没有什么好的方法将进程1的mem暴露出来
情景如下:
进程1由三方代码写了一些数据在内存mem中
对该模块二次开发, 无法修改已有代码, 但是可以在进程内读取这些数据
需求是这些数据需要共享出来, 由多个不同的进程读取(只读不写)
之前的实现是进程1中shmget()创建了一个共享内存shm, 实时从mem复制数据到shm
进程2中就可以shmat()映射到同一共享内存
问题:
因为数据更新频率很高, 这种实现方式效率较低
有没有什么好的方法将进程1的mem暴露出来
7 回答5.6k 阅读
4 回答4.2k 阅读
3 回答789 阅读✓ 已解决
2 回答955 阅读✓ 已解决
2 回答3.5k 阅读
1 回答1.2k 阅读✓ 已解决
2 回答1.4k 阅读✓ 已解决
可以使用管道或local套接字,构建有一个cs架构来处理