【发布时间】:2017-11-03 21:58:24
【问题描述】:
我是 Akka/Scala 的新手,正在尝试调试下面的代码。当resultSetParser 出现异常时,它不会抛出它。相反,使用此代码的服务永远处于空闲状态。
如何让我的服务抛出异常,而不是在流中永远等待? Akka 中是否有类似 watchException() 的函数,我可以在 watchTermination() 之后立即调用它以使其在处理流时抛出它看到的异常?
val chunkSource: Source[ChunkStreamPart, NotUsed] =
Source
.fromIterator(() => resultSetParser(resultSet) map ChunkStreamPart.apply)
.watchTermination()((mat : NotUsed, fut : Future[Done]) => {
watchTermination(fut)
mat
})
val chunkEntity = Chunked(ContentTypes.`application/json`, chunkSource)
【问题讨论】:
-
能否提供
resultSetParser和watchTermination的签名以便澄清?
标签: scala akka akka-stream akka-http