Author: nicolas
Date: Mon Feb  4 02:14:57 2008
New Revision: 618223

URL: http://svn.apache.org/viewvc?rev=618223&view=rev
Log:
reverted change to use System.nanotime() as documented in 
http://wiki.apache.org/commons/Monitoring/Precision

Modified:
    
commons/sandbox/monitoring/trunk/src/main/java/org/apache/commons/monitoring/StopWatch.java
    
commons/sandbox/monitoring/trunk/src/main/java/org/apache/commons/monitoring/impl/ThreadSafeGauge.java
    
commons/sandbox/monitoring/trunk/src/test/java/org/apache/commons/monitoring/StopWatchTest.java
    
commons/sandbox/monitoring/trunk/src/test/java/org/apache/commons/monitoring/impl/CompositeValuesMonitorTest.java
    
commons/sandbox/monitoring/trunk/src/test/java/org/apache/commons/monitoring/impl/ThreadSafeGaugeTest.java

Modified: 
commons/sandbox/monitoring/trunk/src/main/java/org/apache/commons/monitoring/StopWatch.java
URL: 
http://svn.apache.org/viewvc/commons/sandbox/monitoring/trunk/src/main/java/org/apache/commons/monitoring/StopWatch.java?rev=618223&r1=618222&r2=618223&view=diff
==============================================================================
--- 
commons/sandbox/monitoring/trunk/src/main/java/org/apache/commons/monitoring/StopWatch.java
 (original)
+++ 
commons/sandbox/monitoring/trunk/src/main/java/org/apache/commons/monitoring/StopWatch.java
 Mon Feb  4 02:14:57 2008
@@ -57,7 +57,7 @@
     {
         super();
         this.monitor = monitor;
-        startedAt = time();
+        startedAt = nanotime();
         if ( monitor != null )
         {
             monitor.getGauge( Monitor.CONCURRENCY ).increment();
@@ -81,7 +81,7 @@
         else
         {
             // Still running !
-            delay = time() - startedAt - pauseDelay;
+            delay = nanotime() - startedAt - pauseDelay;
         }
         return delay;
     }
@@ -94,7 +94,7 @@
     {
         if ( !paused && !stoped )
         {
-            stopedAt = time();
+            stopedAt = nanotime();
             paused = true;
         }
     }
@@ -106,7 +106,7 @@
     {
         if ( paused && !stoped )
         {
-            pauseDelay = time() - stopedAt;
+            pauseDelay = nanotime() - stopedAt;
             paused = false;
             stopedAt = 0;
         }
@@ -120,7 +120,7 @@
     {
         if ( !stoped )
         {
-            long t = time();
+            long t = nanotime();
             if ( paused )
             {
                 pauseDelay = t - stopedAt;
@@ -210,16 +210,17 @@
     }
 
     /**
-     * Simple benchmark demonstrates that java5 System.currentTimeMillis is FAR
-     * quicker than System.nanoTime. The lack of precision for using ms as time
-     * unit is not blocking for a monitoring toolkit (it may be for a profiler)
+     * Returns the current value of the most precise available system timer, in
+     * nanoseconds. The real precision depends on the JVM and the underlying
+     * system. On JRE before java5, <tt>backport-util-concurrent</tt> provides
+     * some limited support for equivalent timer.
      *
-     * @return time with ms precision
-     * @see org.apache.commons.monitoring.bench.CurrentTimeMillisVsNanoTime
+     * @see System#nanoTime()
+     * @return time in nanosecond
      */
-    protected long time()
+    protected long nanotime()
     {
-        return System.currentTimeMillis();
+        return System.nanoTime();
     }
 
     /**

Modified: 
commons/sandbox/monitoring/trunk/src/main/java/org/apache/commons/monitoring/impl/ThreadSafeGauge.java
URL: 
http://svn.apache.org/viewvc/commons/sandbox/monitoring/trunk/src/main/java/org/apache/commons/monitoring/impl/ThreadSafeGauge.java?rev=618223&r1=618222&r2=618223&view=diff
==============================================================================
--- 
commons/sandbox/monitoring/trunk/src/main/java/org/apache/commons/monitoring/impl/ThreadSafeGauge.java
 (original)
+++ 
commons/sandbox/monitoring/trunk/src/main/java/org/apache/commons/monitoring/impl/ThreadSafeGauge.java
 Mon Feb  4 02:14:57 2008
@@ -105,7 +105,7 @@
 
     protected void computeSums()
     {
-        long now = time();
+        long now = nanotime();
         if ( Double.isNaN( firstUse ) )
         {
             firstUse = now;
@@ -120,15 +120,15 @@
         lastUse = now;
     }
 
-    protected long time()
+    protected long nanotime()
     {
-        return System.currentTimeMillis();
+        return System.nanoTime();
     }
 
     @Override
     public synchronized double getMean()
     {
-        return ( (double) sum ) / ( time() - firstUse );
+        return ( (double) sum ) / ( nanotime() - firstUse );
     }
 
     @Override

Modified: 
commons/sandbox/monitoring/trunk/src/test/java/org/apache/commons/monitoring/StopWatchTest.java
URL: 
http://svn.apache.org/viewvc/commons/sandbox/monitoring/trunk/src/test/java/org/apache/commons/monitoring/StopWatchTest.java?rev=618223&r1=618222&r2=618223&view=diff
==============================================================================
--- 
commons/sandbox/monitoring/trunk/src/test/java/org/apache/commons/monitoring/StopWatchTest.java
 (original)
+++ 
commons/sandbox/monitoring/trunk/src/test/java/org/apache/commons/monitoring/StopWatchTest.java
 Mon Feb  4 02:14:57 2008
@@ -104,7 +104,8 @@
             super( monitor );
         }
 
-        protected long time()
+        @Override
+        protected long nanotime()
         {
             return time;
         }

Modified: 
commons/sandbox/monitoring/trunk/src/test/java/org/apache/commons/monitoring/impl/CompositeValuesMonitorTest.java
URL: 
http://svn.apache.org/viewvc/commons/sandbox/monitoring/trunk/src/test/java/org/apache/commons/monitoring/impl/CompositeValuesMonitorTest.java?rev=618223&r1=618222&r2=618223&view=diff
==============================================================================
--- 
commons/sandbox/monitoring/trunk/src/test/java/org/apache/commons/monitoring/impl/CompositeValuesMonitorTest.java
 (original)
+++ 
commons/sandbox/monitoring/trunk/src/test/java/org/apache/commons/monitoring/impl/CompositeValuesMonitorTest.java
 Mon Feb  4 02:14:57 2008
@@ -83,7 +83,7 @@
         gauge.increment();
         assertEquals( 1, gauge.get() );
         Gauge secondary = composite.createSecondary();
-        assertEquals( 0, secondary.get() );
+        assertEquals( 1, secondary.get() );
 
         gauge.increment();
         assertEquals( 2, gauge.get() );

Modified: 
commons/sandbox/monitoring/trunk/src/test/java/org/apache/commons/monitoring/impl/ThreadSafeGaugeTest.java
URL: 
http://svn.apache.org/viewvc/commons/sandbox/monitoring/trunk/src/test/java/org/apache/commons/monitoring/impl/ThreadSafeGaugeTest.java?rev=618223&r1=618222&r2=618223&view=diff
==============================================================================
--- 
commons/sandbox/monitoring/trunk/src/test/java/org/apache/commons/monitoring/impl/ThreadSafeGaugeTest.java
 (original)
+++ 
commons/sandbox/monitoring/trunk/src/test/java/org/apache/commons/monitoring/impl/ThreadSafeGaugeTest.java
 Mon Feb  4 02:14:57 2008
@@ -100,7 +100,7 @@
         }
 
         @Override
-        protected long time()
+        protected long nanotime()
         {
             return time;
         }


Reply via email to