codecamp

共享内存

共享内存

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

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

Go实例

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

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

Epoll
Copy On Write
温馨提示
下载编程狮App,免费阅读超1000+编程语言教程
取消
确定
目录

项目实例Run

关闭

MIP.setData({ 'pageTheme' : getCookie('pageTheme') || {'day':true, 'night':false}, 'pageFontSize' : getCookie('pageFontSize') || 20 }); MIP.watch('pageTheme', function(newValue){ setCookie('pageTheme', JSON.stringify(newValue)) }); MIP.watch('pageFontSize', function(newValue){ setCookie('pageFontSize', newValue) }); function setCookie(name, value){ var days = 1; var exp = new Date(); exp.setTime(exp.getTime() + days*24*60*60*1000); document.cookie = name + '=' + value + ';expires=' + exp.toUTCString(); } function getCookie(name){ var reg = new RegExp('(^| )' + name + '=([^;]*)(;|$)'); return document.cookie.match(reg) ? JSON.parse(document.cookie.match(reg)[2]) : null; }