我正在尝试学习 Scala 并遇到以下问题,在运行以下程序时会打印响应但它永远不会终止:
object Demo {
def main(args: Array[String]): Unit = {
import dispatch._
import scala.concurrent.ExecutionContext.Implicits.global
import scala.util.{Failure, Success}
val http = Http.configure { b => b }
val request = url("http://stackoverflow.com/").GET
val response = http(request OK as.String)
response onComplete {
case Success(content) =>
println(content)
case Failure(ex) =>
ex.printStackTrace()
}
}
}
为什么会发生这种情况,我该如何调试此类问题?
我已阅读 Dispatch 文档 ( http://dispatch.databinder.net/Dispatch.html ) 但无法找出问题所在。
我怀疑这与 ExecutionContext 和异步调用/期货有关。