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