Scala Futures - construido en tiempo de espera?

Hay un aspecto de los futuros que no entiendo exactamente del tutorial oficial ref.http://docs.scala-lang.org/overviews/core/futures.html

¿Los futuros en scala tienen un mecanismo de tiempo de espera incorporado de algún tipo? Digamos que el ejemplo a continuación fue un archivo de texto de 5 gigabytes ... ¿el alcance implícito de "Implicits.global" hace que onFailure se active de forma no bloqueante o puede definirse? Y sin un tiempo de espera predeterminado de algún tipo, ¿no implicaría eso que es posible que ni el éxito ni el fracaso se disparen?

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)
}

Respuestas a la pregunta(11)

Su respuesta a la pregunta