1
A
回答
1
在阿卡的演员可以到许多不同类型的消息作出回应,并发送任何消息,以及...
case class Message1(id: Long)
case class Message2(thing: String)
case class Response1(x: Int)
case class Response2(y: Int)
class MyActor extends Actor with ActorLogging {
def receive = {
case Message1(id) => sender ! Response1(id)
case Message2(t) => sender ! Response2(1)
}
}
所有你需要做的是寻找他们的receive
方法case语句。
1
下面是一个示例,显示如何处理演员的不同结果。
鉴于以下演员:
case object GiveMeAFruit
trait Fruit
case class Apple(size: Int) extends Fruit
case class Pear(color: String) extends Fruit
class FruitNinja extends Actor {
def receive = {
case GiveMeAFruit =>
if (math.random > 0.5)
sender ! Apple(42)
else
sender ! Pear("yellow")
}
}
从另一个演员
class HungryActor extends Actor {
val fruitNinja = context.actorOf(Props[FruitNinja])
override def preStart = {
context.system.scheduler.schedule(5 seconds, 5 seconds, fruitNinja, GiveMeAFruit)
}
def receive = {
// handle different returns from FruitNinja
case Apple(size) =>
println(s"Got an apple sized $size.")
case Pear(color) =>
println(s"Got a $color pear")
}
}
从 '正常' 代码
import akka.pattern.ask
def eatSomething = {
// create an instance of the actor using an actorsystem in scope
val fruitNinja = Akka.system.actorOf(Props[FruitNinja])
(fruitNinja ? GiveMeAFruit).mapTo[Fruit].map{
// handle different returns from FruitNinja
case Apple(size) =>
println(s"Got an apple sized $size.")
case Pear(color) =>
println(s"Got a $color pear")
}
}
相关问题
- 1. Akka:等待多条消息
- 2. 处理多条消息
- 3. akka在哪里处理消息?
- 4. Akka演员在处理第一条消息之前正在处理第二条消息
- 5. 处理无限数量的消息(akka)
- 6. Akka如何处理消息版本?
- 7. 使用Akka处理SOAP消息
- 8. Akka的演员异步消息处理
- 9. Akka未处理消息的持久性
- 10. Akka如何确保演员一次只处理一条消息
- 11. 与ActiveMQ并行处理多条消息
- 12. 演员同时处理多条消息
- 13. 在处理消息或处理完消息之前做了akka骆驼消费者出队消息吗?
- 14. 等待异步在Akka处理下一条消息之前的未来呼叫
- 15. 在tomcat中使用多线程处理websocket消息消息
- 16. Akka:在处理标记为NotInfluenceReceiveTimeout的消息时调用setReceiveTimeout
- 17. 可能与Akka FSM中收到的多条消息匹配
- 18. 卡夫卡消费者可以并行处理多条消息
- 19. WebJob一次处理队列中的多条消息
- 20. 处理消息
- 21. 处理消息
- 22. Embedded Jetty处理每条消息两次
- 23. RapidSMS教程2,处理一条消息
- 24. 应用挂起处理几条消息
- 25. 非类型化Actor(Java + Akka):重新处理未处理的消息
- 26. 消息队列中的多条消息
- 27. 用Akka耐用邮箱处理事务性消息
- 28. Akka演员如何处理最新消息
- 29. Akka消息为空
- 30. MSMQ中毒消息处理
丹科演员相通 - 是有帮助 –