|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object org.springframework.util.StopWatch
public class StopWatch
Simple stop watch, allowing for timing of a number of tasks, exposing total running time and running time for each named task.
Conceals use of System.currentTimeMillis()
, improving the
readability of application code and reducing the likelihood of calculation errors.
Note that this object is not designed to be thread-safe and does not use synchronization.
This class is normally used to verify performance during proof-of-concepts and in development, rather than as part of production applications.
Nested Class Summary | |
---|---|
static class |
StopWatch.TaskInfo
Inner class to hold data about one task executed within the stop watch. |
Constructor Summary | |
---|---|
StopWatch()
Construct a new stop watch. |
|
StopWatch(String id)
Construct a new stop watch with the given id. |
Method Summary | |
---|---|
String |
getLastTaskName()
Return the name of the last task. |
long |
getLastTaskTimeMillis()
Return the time taken by the last task. |
int |
getTaskCount()
Return the number of tasks timed. |
StopWatch.TaskInfo[] |
getTaskInfo()
Return an array of the data for tasks performed. |
long |
getTotalTimeMillis()
Return the total time in milliseconds for all tasks. |
double |
getTotalTimeSeconds()
Return the total time in seconds for all tasks. |
boolean |
isRunning()
Return whether the stop watch is currently running. |
String |
prettyPrint()
Return a string with a table describing all tasks performed. |
void |
setKeepTaskList(boolean keepTaskList)
Determine whether the TaskInfo array is built over time. |
String |
shortSummary()
Return a short description of the total running time. |
void |
start()
Start an unnamed task. |
void |
start(String taskName)
Start a named task. |
void |
stop()
Stop the current task. |
String |
toString()
Return an informative string describing all tasks performed For custom reporting, call getTaskInfo() and use the task info directly. |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
Constructor Detail |
---|
public StopWatch()
public StopWatch(String id)
id
- identifier for this stop watch.
Handy when we have output from multiple stop watches
and need to distinguish between them.Method Detail |
---|
public void setKeepTaskList(boolean keepTaskList)
public void start() throws IllegalStateException
stop()
or timing methods are called without invoking this method.
IllegalStateException
stop()
public void start(String taskName) throws IllegalStateException
stop()
or timing methods are called without invoking this method.
taskName
- the name of the task to start
IllegalStateException
stop()
public void stop() throws IllegalStateException
start()
/ stop()
methods.
IllegalStateException
start()
public boolean isRunning()
public long getLastTaskTimeMillis() throws IllegalStateException
IllegalStateException
public String getLastTaskName() throws IllegalStateException
IllegalStateException
public long getTotalTimeMillis()
public double getTotalTimeSeconds()
public int getTaskCount()
public StopWatch.TaskInfo[] getTaskInfo()
public String shortSummary()
public String prettyPrint()
public String toString()
getTaskInfo()
and use the task info directly.
toString
in class Object
|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |