src/Pure/General/timing.scala
changeset 55618 995162143ef4
parent 51587 7050c4656fd8
child 56691 ad5d7461b370
equal deleted inserted replaced
55617:2c585bb9560c 55618:995162143ef4
    12 {
    12 {
    13   val zero = Timing(Time.zero, Time.zero, Time.zero)
    13   val zero = Timing(Time.zero, Time.zero, Time.zero)
    14 
    14 
    15   def timeit[A](message: String, enabled: Boolean = true)(e: => A) =
    15   def timeit[A](message: String, enabled: Boolean = true)(e: => A) =
    16     if (enabled) {
    16     if (enabled) {
    17       val start = java.lang.System.currentTimeMillis()
    17       val start = System.currentTimeMillis()
    18       val result = Exn.capture(e)
    18       val result = Exn.capture(e)
    19       val stop = java.lang.System.currentTimeMillis()
    19       val stop = System.currentTimeMillis()
    20 
    20 
    21       val timing = Time.ms(stop - start)
    21       val timing = Time.ms(stop - start)
    22       if (timing.is_relevant)
    22       if (timing.is_relevant)
    23         java.lang.System.err.println(
    23         System.err.println(
    24           (if (message == null || message.isEmpty) "" else message + ": ") +
    24           (if (message == null || message.isEmpty) "" else message + ": ") +
    25             timing.message + " elapsed time")
    25             timing.message + " elapsed time")
    26 
    26 
    27       Exn.release(result)
    27       Exn.release(result)
    28     }
    28     }