Как вы комбинируете несколько com.twitter.util.Awaitable с семантикой Future.select?

В сервисе у меня есть основной метод, который запускает com.twitter.finagle.ListeningServer а также создает собственный "канал", возвращающий com.twitter.util.Future это никогда не завершается (если нет ошибки). Оба на самом деле com.twitter.util.Awaitable экземпляры, и я хочу закрыть свой сервис, если любой из них завершается.

Если бы оба были com.twitter.util.Futures я мог бы использовать Future.select чтобы выбрать первое будущее, которое завершено, поэтому сейчас я конвертирую com.twitter.finagle.ListeningServer в com.twitter.util.Future с помощью pool { Await.result(listeningServer) },

Есть ли лучший способ решить мою проблему?

0 ответов

Другие вопросы по тегам