【问题标题】:Akka passing pojo objects to onReceive method of my actorAkka 将 pojo 对象传递给我的演员的 onReceive 方法
【发布时间】:2014-09-17 21:27:52
【问题描述】:

我是 akka 的新手,到目前为止我只尝试了一个演员处理外部 api 调用。在哪里我创建了一个对象 UserData 并使该对象不可变,并且我一直发送给我的演员(通过传递 UserData 告诉我的演员)。 我已经阅读了 akka 文档(java 2.3.6)

现在我想将 akka 用于其他用例,在这些用例中,我已经有一个 POJO 对象,并且我不能使其不可变,因为其他开发人员使用它。我想将它发送给演员 onRecieve 方法(告诉演员)

但是我很困惑演员是如何分配给线程的,它的基本原理是如何处理邮件的邮箱(我的案例 pojos),如果你向演员发送 POJO 会发生什么,假设没有静态变量改变POJO 的状态?

这里会不会有并发问题?

注意:一旦提交给演员,没有人想使用 setter 方法更改 pojo,但是如果它被更改会发生什么

我在正确的轨道上吗?因为后来我想通过创建更多参与者来使用框架的其他功能,例如路由。

【问题讨论】:

标签: java akka


【解决方案1】:

我个人认为你应该只传递不可变的消息。如果这不适用于您的 POJO,您始终可以将它们映射到它们自身的不可变表示中。

【讨论】:

  • 如果您无法更改原始模型,这是最好的方法。创建一个不可变副本并将其发送给演员。
猜你喜欢
  • 2015-10-01
  • 1970-01-01
  • 1970-01-01
  • 2011-03-05
  • 1970-01-01
  • 2023-03-09
  • 2011-09-27
  • 2014-12-01
  • 1970-01-01
相关资源
最近更新 更多