[
https://issues.apache.org/jira/browse/GEODE-7010?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Kirk Lund resolved GEODE-7010.
------------------------------
Resolution: Fixed
Fix Version/s: 1.10.0
> Replace static globals in CachePerfStats with StatisticsClock
> -------------------------------------------------------------
>
> Key: GEODE-7010
> URL: https://issues.apache.org/jira/browse/GEODE-7010
> Project: Geode
> Issue Type: Wish
> Components: statistics
> Reporter: Kirk Lund
> Assignee: Kirk Lund
> Priority: Major
> Fix For: 1.10.0
>
> Time Spent: 2h 50m
> Remaining Estimate: 0h
>
> Introduce new StatisticsClock interface. An instance will be created during
> Cache creation. The method isEnabled() will be configured by
> system.getConfig().getEnableTimeStatistics() and getTime() will return
> System.nanoTime() if enabled or zero if disabled. This instance will be
> passed around and injected as a dependency via the constructor of each class
> that uses it.
> {noformat}
> @FunctionalInterface
> public interface StatisticsClock {
> /**
> * Returns the current value of the running Java Virtual Machine's
> high-resolution time source,
> * in nanoseconds.
> *
> * <p>
> * See {@code java.lang.System#nanoTime()}.
> */
> long getTime();
> /**
> * Returns true if this clock is enabled. If disabled then {@code
> getTime()} will return zero.
> *
> * <p>
> * Default returns {@code true}.
> */
> default boolean isEnabled() {
> return true;
> }
> }
> {noformat}
--
This message was sent by Atlassian JIRA
(v7.6.14#76016)