在两个进程之间共享内存

3

我想在两个进程之间共享内存。我知道的一种方法是通过mmap映射一个共享文件。但是,我不想使用共享文件,我想要匿名映射到内存中。我该怎么做呢?

5个回答

3

3

2
你可以将mmap文件放在目录/dev/shm中,该目录在大多数Linux系统中被挂载为tmpfs(即基于内存的文件系统)。
或者,如果你想要其他选项,可以在目录树中的其他位置挂载自己的tmpfs。

0

shm_get 是一个很好的起点,但你还需要了解semaphores来实现互斥,以防止内存被破坏。


0
请记住,在 NUMA 系统中,如果核心位于不同的节点上,则它们将以不同的速度访问内存,除非您选择一个距离这些核心等距的 NUMA 节点。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接