Package org.scijava.util
Class Timing
- java.lang.Object
-
- org.scijava.util.Timing
-
public class Timing extends Object
A helper class to help with optimizing the performance of a list of operations.For example, when trying to figure out which
Servicewould be the best candidate to speed upContextinitialization, this helper comes in real handy: it accumulates a list of operations with their duration and prints out a sorted list when asked to.Use this class as following:
private static Timing timing = new Timing(); ... private void oneOperation() { final long t1 = System.nanoTime(); ... timing.add(System.nanoTime() - t1, "Operation #1"); } ... private void atEnd() { ... timing.report("Operations"); }- Author:
- Johannes Schindelin
-
-
Constructor Summary
Constructors Constructor Description Timing()
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description voidaddTiming(long duration, Object message)voidaddTiming(Object message)voidreport(String description)voidreset()static Timingstart(boolean condition)static voidstop(Timing timing)static voidtick(Timing timing)static voidtick(Timing timing, Object message)
-
-
-
Method Detail
-
reset
public void reset()
-
addTiming
public void addTiming(Object message)
-
addTiming
public void addTiming(long duration, Object message)
-
report
public void report(String description)
-
start
public static Timing start(boolean condition)
-
tick
public static void tick(Timing timing)
-
stop
public static void stop(Timing timing)
-
-