您对演员模型有何看法?[关闭]


18

Erlang使用的Actor模型似乎是进行并发编程的非常不同的方式。您对演员模型有何看法?它将是流行的并发解决方案吗?



这个网站似乎对偏见的问题过于偏颇和不公平。显然,这是基于意见的,但尚未结束。其他基于意见的问题会在几分钟之内结束。如何改善这一过程并使之更加公平?
约旦2014年

我觉得这个话题很有趣,但是,是的,这个问题太广泛了,而且基于观点。
乔治

Answers:


7

我想你知道这个概念。好吧,我还不太了解。

简短的答案是,我相信这种模式在短期和中期都非常适合并发。我一直很喜欢lambda和闭包,而且我看到actor就像闭包一样专门为增强并发性而处理。因此,多核处理器为我们带来了编程的新范例,并发必须实现高性能。Actor模型似乎是开发现代硬件的便捷之路。

迟早(我希望早晚),几乎每种主流语言都将支持更好的并发模型。最好在Erlang中很好地实施的IMHO Actor模型。

Actor模型获得普及的一个障碍是OOP的阻抗很小,OOP是目前的主要范例。但是第一步已经给出,主要的语言正在实现一些功能特性,这些特性将清除Actor模型的路径。

我正在阅读有关此问题的很多文章,我认为这对于每个程序员的技能提升都很重要。

后期编辑:

现在,我更好地理解了天堂。因此,我可以说,编程语言最好允许问题由库处理,或者最终具有促进采用一种模型的功能。将语言与一种模型捆绑在一起不会产生良好的意识形态。


2
Actor模型和OOP之间有阻抗吗?艾伦·凯(Alan Kay)的Smalltalk大部分来自PLANNER。休伊特从Smalltalk-72获得了很多收益。Joe Armstrong现在将Erlang称为“可能是唯一的真正的OO语言”。
Frank Shearar 2010年

7

“热门”并不是一个非常重要的指标。“有用”或“强大”是。

至少在学术界,Actor模型已经存在大约35年了,随着时间的流逝,它已被越来越多的现实世界语言所采用。(好的,Erlang没有采用 Actor模型,而是对Actor模型进行了重新发明。)

因此,鉴于它已经在学术界幸存了几十年,并且已经进入了主流,我想说它将会存在一段时间。


5

老实说,我认为这是进行并发的最佳方法。带锁的共享内存模型使我感到恐惧,我发现它出了很多问题。具有消息传递功能的演员似乎是一种更清洁的方法。

还要看一下可用于Clojure和Haskell以及其他几种语言的STM。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.