欢迎大家赞助一杯啤酒🍺 我们准备了下酒菜:Formal mathematics/Isabelle/ML, Formal verification/Coq/ACL2, C++/F#/Lisp
Actor model
来自开放百科 - 灰狐
(版本间的差异)
小 (→项目) |
小 (→项目) |
||
第25行: | 第25行: | ||
*[https://github.com/actor-framework/actor-framework CAF: C++ Actor Framework] | *[https://github.com/actor-framework/actor-framework CAF: C++ Actor Framework] | ||
*[[Skynet game framework]] | *[[Skynet game framework]] | ||
− | *[https://github.com/dotnet/orleans Orleans] Distributed Virtual Actor Model in [[.NET]] | + | *[https://github.com/dotnet/orleans Orleans] Distributed Virtual Actor Model in [[.NET]] [https://github.com/OrleansContrib OrleansContrib] |
==图集== | ==图集== |
2016年8月14日 (日) 06:35的版本
您可以在Wikipedia上了解到此条目的英文信息 Actor model Thanks, Wikipedia. |
参与者模型推崇的哲学是“一切皆是参与者”,这与面向对象编程的“一切皆是对象”类似,但是面向对象编程通常是顺序执行的,而参与者模型是并行执行的。
目录 |
简介
参与者是一个运算实体,回应接受到的消息,同时并行的:
- 发送有限数量的消息给其他参与者;
- 创建有限数量的新参与者;
- 指定接受到下一个消息时的行为。
以上操作不含有顺序执行的假设,因此可以并行进行。
发送者与已经发送的消息解耦,是参与者模型的根本优势。这允许进行异步通信,同时满足消息传递的控制结构。
消息接收者是通过地址区分的,有时也被称作“邮件地址”。因此参与者只能和它拥有地址的参与者通信。它可以通过接受到的信息获取地址,或者获取它创建的参与者的地址。
参与者模型的特征是,参与者内部或之间进行并行计算,参与者可以动态创建,参与者地址包含在消息中,交互只有通过直接的异步消息通信,不限制消息到达的顺序。
项目
- Akka
- pulsar for Clojure
- Erlang
- GearPump
- CAF: C++ Actor Framework
- Skynet game framework
- Orleans Distributed Virtual Actor Model in .NET OrleansContrib
图集
链接
分享您的观点