V - the result type of method callpublic class MonitoredCallable<V> extends MonitoredOperation implements Callable<V>
A Callable wrapper that maintains one or more counters for monitoring the time
spent by the Callable's call() method.
Specify a target Callable via constructor, then execute the call()
method available in this wrapper. The target Callable's call() method
will be executed and monitored.
After the operation, call printSummary() or printDetails() to print the
elapsed times or elapsedTime(Counter.Type), to retrieve the elapsed time
duration for a particular counter. E.g.:
Duration cpuTime = monitoredRunnable.elapsedTime(Counter.Type.CPU_TIME);
By default, all available counter types will be measured, if no specific counter types are passed to the constructor. If required, an additional constructor may be used to set up one or more specific counters to be maintained. E.g.:
new MonitoredCallable(callable); // maintains all available counter types new MonitoredCallable(callable, Counter.Type.WALL_CLOCK_TIME); // wall-clock time only
For a list of available counters, refer to Counter.Type.
Note: This class is not thread-safe. In a multi-thread context, different instances must be created for each thread.
Counter,
Counter.Type| Constructor and Description |
|---|
MonitoredCallable(Callable<V> callable)
Builds this monitored operation with a given
Callable. |
MonitoredCallable(Callable<V> callable,
Counter.Type... types)
Builds this monitored operation with a given
Callable and one or more specific
counter types to be maintained. |
| Modifier and Type | Method and Description |
|---|---|
V |
call() |
elapsedTime, elapsedTime, elapsedTime, getAllCountersByType, getCounters, printDetails, printDetails, printSummary, printSummary, resetpublic MonitoredCallable(Callable<V> callable)
Callable. All available counter
types will be maintained.callable - the Callable to be executedpublic MonitoredCallable(Callable<V> callable, Counter.Type... types)
Callable and one or more specific
counter types to be maintained.callable - the Callable to be executedtypes - the counter types to be maintained with the operationCopyright © 2021. All rights reserved.