在向akka actor发送消息时发送有效负载

时间:2015-09-11 23:59:41

标签: scala akka actor remote-actors

有没有办法在向akka演员发送消息时添加某种payload(附加消息)?我知道有一种方法可以使用routers来实现这一点,但这可以通过简单的消息传递来实现吗?

通过简单的消息传递,我的意思是这样的remoteActor ! "hi"

1 个答案:

答案 0 :(得分:0)

是的,是的,你可以。你可以发送你想要的任何有效载荷,但它必须是不可变的(据我所知)。大多数人使用案例类。例如。

case class Payload(pay: List[String], load: Int)

然后你可以这样做

actorRef ! Payload(List("string1","1gnirts"),69)

但你必须记得在接收中创建适当的案例

def receive = 
   case Payload(pay,load) => doSomeStuff(load,pay)