src/Pure/Tools/build_process.scala
changeset 78406 2ece6509ad6f
parent 78401 822ddccda899
child 78409 f2d67c78b689
equal deleted inserted replaced
78405:8ff1698e7247 78406:2ece6509ad6f
   877         db
   877         db
   878       }
   878       }
   879     }
   879     }
   880     catch { case exn: Throwable => close(); throw exn }
   880     catch { case exn: Throwable => close(); throw exn }
   881 
   881 
       
   882   protected val build_delay: Time =
       
   883     build_options.seconds(if (_build_database.isEmpty) "build_delay" else "build_database_delay")
       
   884 
   882   private val _host_database: Option[SQL.Database] =
   885   private val _host_database: Option[SQL.Database] =
   883     try { store.maybe_open_build_database(path = Host.private_data.database, server = server) }
   886     try { store.maybe_open_build_database(path = Host.private_data.database, server = server) }
   884     catch { case exn: Throwable => close(); throw exn }
   887     catch { case exn: Throwable => close(); throw exn }
   885 
   888 
   886   protected val (progress, worker_uuid) = synchronized {
   889   protected val (progress, worker_uuid) = synchronized {
  1080     }
  1083     }
  1081 
  1084 
  1082     def finished(): Boolean = synchronized_database("Build_Process.test") { _state.finished }
  1085     def finished(): Boolean = synchronized_database("Build_Process.test") { _state.finished }
  1083 
  1086 
  1084     def sleep(): Unit =
  1087     def sleep(): Unit =
  1085       Isabelle_Thread.interrupt_handler(_ => progress.stop()) {
  1088       Isabelle_Thread.interrupt_handler(_ => progress.stop()) { build_delay.sleep() }
  1086         build_options.seconds("build_delay").sleep()
       
  1087       }
       
  1088 
  1089 
  1089     def check_jobs(): Boolean = synchronized_database("Build_Process.check_jobs") {
  1090     def check_jobs(): Boolean = synchronized_database("Build_Process.check_jobs") {
  1090       val jobs = next_jobs(_state)
  1091       val jobs = next_jobs(_state)
  1091       for (name <- jobs) {
  1092       for (name <- jobs) {
  1092         if (is_session_name(name)) {
  1093         if (is_session_name(name)) {