从官方教程参考中我还没有完全理解未来的一个方面.http://docs.scala-lang.org/overviews/core/futures.html
scala中的期货是否有某种内置的超时机制?假设下面的示例是一个5千兆字节的文本文件......"Implicits.global"的隐含范围是否会导致onFailure以非阻塞方式触发或者是否可以定义?没有某种默认的超时时间,这是否意味着它既不会成功也不会失败?
import scala.concurrent._
import ExecutionContext.Implicits.global
val firstOccurence: Future[Int] = future {
val source = scala.io.Source.fromFile("myText.txt")
source.toSeq.indexOfSlice("myKeyword")
}
firstOccurence onSuccess {
case idx => println("The keyword first appears at position: " + idx)
}
firstOccurence onFailure {
case t => println("Could not process file: " + t.getMessage)
}
Run Code Online (Sandbox Code Playgroud)