我是编写使用共享内存的应用程序的新手。我正在编写一个 C 应用程序,我想使用共享内存。
我知道在使用共享内存时很容易自欺欺人,所以理想情况下,我想使用一个成熟的、经过同行评审(即开源)的轻量级 C 库,它可以让编写使用共享内存的应用程序变得容易,并自动处理任何“陷阱”。
谁能推荐一个(shmem 新手)可以用来加快编写应用程序的轻量级 ANSI 共享内存库?
注意:我只关心在Linux平台上运行
我是编写使用共享内存的应用程序的新手。我正在编写一个 C 应用程序,我想使用共享内存。
我知道在使用共享内存时很容易自欺欺人,所以理想情况下,我想使用一个成熟的、经过同行评审(即开源)的轻量级 C 库,它可以让编写使用共享内存的应用程序变得容易,并自动处理任何“陷阱”。
谁能推荐一个(shmem 新手)可以用来加快编写应用程序的轻量级 ANSI 共享内存库?
注意:我只关心在Linux平台上运行
我认为 mmap() 可用于跨进程共享内存。Android ashmem 也用于共享内存。我认为 asmem 可用于最新的 Linux 内核。
正如@akhil 所说mmap
,可以使用,但如果您正在寻找一种简单的方法来共享内存(在 Linux 上),最简单的方法是读写,/dev/shm
因为它是一个 ramdisk,请记住,您不能总是依赖/dev/shm
在场。
自 Linux 内核 2.6 起,基于 RedHat 和 Debian 的发行版默认包含它
更多信息:http ://en.wikipedia.org/wiki/Shared_memory#Support_on_UNIX_platforms