Skip to content

Latest commit

 

History

1 Commit

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 

Repository files navigation

Actor Model 深度理解

历史背景

Actor Model是一个并发计算的数学模型,由Carl Hewitt在1973年首次提出。它将"actor"作为计算的基本单元。这个模型在分布式系统和高并发环境中特别有用。

主要里程碑:

  • 1973年:Carl Hewitt提出Actor Model概念
  • 1986年:Erlang语言诞生于爱立信,成为首个完全基于Actor Model的工业级语言
  • 2011年:Elixir语言创建,构建于Erlang的BEAM虚拟机上,提供更现代的语法
  • 现代实现:Akka (Java/Scala), Orleans (Microsoft), 以及UE4/UE5游戏引擎也采用类似模型

核心概念

Actor Model的基本原则:

  1. 一切皆为Actor
  2. Actor之间只通过消息通信(没有共享状态)
  3. 每个Actor可以:
    • 创建新的Actor
    • 向其他Actor发送消息
    • 决定如何处理收到的下一条消息

对比传统并发模型与Actor Model

本项目通过两个示例展示不同方法:

  • rust-example/: 使用传统并发模型(锁、互斥体等)的挑战
  • erlang-example/: 展示Erlang中Actor模型的优雅实现

为什么UE4/UE5使用Actor模型?

在游戏引擎中,Actor模型提供了:

  • 清晰的对象生命周期管理
  • 良好的并发控制
  • 简化的对象间通信
  • 易于扩展的系统架构

About

No description, website, or topics provided.

Resources

Stars

0 stars

Watchers

1 watching

Forks

Releases

Packages

Used by

Contributors

Languages