<分区>
我试图了解 Actors 和线程定义的区别。有的文章说actor是轻量线程,有的文章说actor不是线程。我也明白一个线程可以运行多个 Actor 。我对如何准确区分 Actor 和线程感到困惑。请帮助我理解谢谢!
<分区>
我试图了解 Actors 和线程定义的区别。有的文章说actor是轻量线程,有的文章说actor不是线程。我也明白一个线程可以运行多个 Actor 。我对如何准确区分 Actor 和线程感到困惑。请帮助我理解谢谢!
最佳答案
与线程相比,
Actor 处于更高的抽象级别。
Thread 是一个 JVM 概念,而 Actor 是在 JVM 中运行的普通 java 类,因此问题不在于 Actor 与Thread,更多关于 Actor 如何使用 Threads。
什么是 Actor?
在非常简单的层面上,Actor 是一个实体,一次接收一个消息,并对这些消息作出 react 。
Actor如何使用线程?
当 Actor 收到消息时,它会执行一些操作作为响应。 action 代码如何在 JVM 中运行?同样,如果简化情况,您可以想象 Action 在当前线程上执行 action 任务。此外,Actor 可能决定在线程池上执行action 任务。只要 Actor 确保一次只处理一条消息,这并不重要。
关于java - Actor 与线程的定义有何不同?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47248820/