共享内存

对于共享内存是好是坏,我们不能妄下定论,不过学习一下总是好的。

不同进程之间内存空间是独立的,也就是说进程不能访问也不会干扰其他进程的内存。如果两个进程希望通过共享内存的方式通信呢?可以通过mmap()系统调用实现。

Go实例

Go也实现了mmap()函数支持共享内存,不过也是通过cgo来调用C实现的系统调用函数。Cgo是什么?它是Go调用C语言模块的功能,当然这种调用很可能是平台相关的,也就是无法保证在Windows也能正确运行。

具体代码参见Golang对共享内存的操作,有时间我们也愿意写一个更简单易懂的例子。