src/Pure/ML-Systems/multithreading_polyml.ML
changeset 32186 8026b73cd357
parent 32185 57ecfab3bcfe
child 32230 9f6461b1c9cc
--- a/src/Pure/ML-Systems/multithreading_polyml.ML	Sat Jul 25 00:39:05 2009 +0200
+++ b/src/Pure/ML-Systems/multithreading_polyml.ML	Sat Jul 25 00:53:47 2009 +0200
@@ -36,9 +36,10 @@
   else (TextIO.output (TextIO.stdErr, (">>> " ^ msg () ^ "\n")); TextIO.flushOut TextIO.stdErr)
     handle _ (*sic*) => ();
 
-fun tracing_time time =
+fun tracing_time detailed time =
   tracing
-   (if Time.>= (time, Time.fromMilliseconds 1000) then 1
+   (if not detailed then 5
+    else if Time.>= (time, Time.fromMilliseconds 1000) then 1
     else if Time.>= (time, Time.fromMilliseconds 100) then 2
     else if Time.>= (time, Time.fromMilliseconds 10) then 3
     else if Time.>= (time, Time.fromMilliseconds 1) then 4 else 5);
@@ -231,7 +232,7 @@
             let
               val _ = tracing 5 (fn () => "CRITICAL" ^ show name ^ show' name' ^ ": waiting");
               val time = real_time Mutex.lock critical_lock;
-              val _ = tracing_time time (fn () =>
+              val _ = tracing_time true time (fn () =>
                 "CRITICAL" ^ show name ^ show' name' ^ ": passed after " ^ Time.toString time);
             in () end;
         val _ = critical_thread := SOME (Thread.self ());