Я время от времени получаю util.NoSuchElementException: Future.filter predicate is not satisfied
исключений.
Насколько я понимаю из других вопросов, это появляется с if guards
в for comprehensions
. Я широко использую for comprehensions
, но не могу найти никаких условий. Однако я делаю некоторые назначения.
for {
foo <- Future{0}
bar = foo + 1
} yield bar
Однако, насколько я понимаю, это должно быть хорошо.
Я изо всех сил пытаюсь найти источник исключения во время выполнения. Есть ли другие случаи, когда Future.filter
будет вызван, кроме if guards
? Любые другие идеи о том, что я должен искать?
Редактировать:
Может ли это быть вызвано сопоставлением с шаблоном, как
for {
foo <- Future{0 -> 1}
(bar, _) <- foo
} yield bar + 1
Edit2:
Полагаю, все вышесказанное хорошо, но это может вызвать RTE?
for {
(bar, _) <- Future{0 -> 1}
} yield bar + 1