gpt4 book ai didi

java - Akka 并发只有 1 个 actor

转载 作者:行者123 更新时间:2023-12-02 02:02:12 24 4
gpt4 key购买 nike

如果我在程序开始时只创建一个 Akka actor,那么我的每条消息都是 tell该参与者在单个线程上按顺序处理?所以如果我有多个线程tell让该参与者执行不同的任务,这与在 Java 上让多个线程对任务进行排队本质上是一样的吗Executor.newSingleThreadExecutor

最佳答案

一个actor按顺序处理消息并且(至少在Akka中)呈现出单线程的错觉(也就是说,在幕后,调度程序可以在不同的线程上从一个消息到另一个消息执行actor的逻辑,但是从 Actor 的视角只有一个线程)。

如果只有一个参与者,消息处理实际上与在单线程执行器中排队任务相同(潜在的额外好处是每个执行的任务可以通过改变参与者的响应方式来影响后续任务的执行)一条消息)。

因此, Actor 本身并不是一个有用的抽象。将许多参与者放入一个可以协作的系统中,你就会得到一些非常有用和强大的东西。

关于java - Akka 并发只有 1 个 actor,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/68865828/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com