未收到可观察的事件

时间:2016-09-01 14:56:56

标签: scala observable rx-scala

我有一个名为responses的{​​{1}}类型的变量,它发出:

Observable[Try[Int]],其中Success(n)是自然数 要么 n

我正在对这个可观察的值进行求和:

Failure(Exception)

印刷声明显示:

val sum = responses.foldLeft(0) { (acc, tn) =>
  println("t1 tn: " + tn)
  println("t1 acc: " + acc)
  tn match {
    case Success(n) => acc + n
    case Failure(t) => acc // Failures are 0
  }
}

之后,我试图从这个观察中得到这样的总和:

t1 tn: Success(1)
t1 acc: 0
t1 tn: Success(1)
t1 acc: 1
t1 tn: Success(1)
t1 acc: 2
t1 tn: Success(2)
t1 acc: 3
t1 tn: Failure(java.lang.Exception)
t1 acc: 5
t1 tn: Success(3)
t1 acc: 5
t1 tn: Success(3)
t1 acc: 8
t1 tn: Success(3)
t1 acc: 11

但是,在这里,var total = -1 val sub = sum.subscribe { s => { println("t1 s: " + s) total = s } } 永远不会更新,并且print语句永远不会显示任何内容。

为什么会这样?

为什么事件不再传递?

0 个答案:

没有答案