2013-02-13 2 views
1

У меня есть клиент/сервер, который выполняет некоторые действия rpc. Я немного знаю о finagle, и я считаю, что изоляция с Будущим очень изящна. Поэтому мой вопрос заключается в том, как написать будущее в scala, ожидающем события (ответ сервера моего запроса клиента). Реализация, вероятно, будет использовать идентифицированный запрос, но то, чего мне не хватает, - это способ спросить будущее ждать события без оживленного ожидания.Как написать будущее, ожидающее события

ответ

0

Для этого вам нужно взглянуть на Akka Actors

Вот пример актера

class MyActor extends Actor { 
    val log = Logging(context.system, this) 
    def receive = { 
     case "test" ⇒ log.info("received test") 
     case _  ⇒ log.info("received unknown message") 
    } 
} 
2

Создать Promise вместо Future и добавить слушателя к вашему событию, которое выполняет обещание. Верните будущее обещания вашему клиенту (в Twitter Util будущей библиотеке это само обещание, в Scala 2.10 это p.future).

Смежные вопросы