
























最近一直在学习并行与并发相关的东西,从用CCR户手册到erlang论文,从Channel 9的视频到MSDN的文章到,略有心得拿出来分享一下:
就像多任务操作系统中一个进程不能直接访问(OK,起码是不能很轻松的访问)另外一个进程的内存
分离异步操作的执行方法和数据提供。一个有意义的程序执行需要两个部分:代码和数据。如果代码得到了数据之后就可以去执行了,能够并行执行的代码中,共享的数据越少越好,共享数据越少,需要锁定的地方就越少,效率提高,出错的可能降低。erlang中甚至要求两个不同的进程之间只能通过消息传递数据。
CCR使用Port来进行消息传递。port是将数据传递给代码的载体。当数据被投递到port中,port会根据元素类型将之和port上绑定的处理函数结合在一起组成一个Task,然后放入DispatcherQueue中等待执行。
并发与并行为啥重要有啥好处就不再多说了。谈谈并发与并行编程中常见的问题和困难吧。
此内容由惯性聚合(RSS阅读器)自动聚合整理,仅供阅读参考。 原文来自 — 版权归原作者所有。