Mercurial > hg > release > thermostat-0.5
changeset 856:a0536f7b3be7
Cache Thread Harvester JMX bean
review-thread: http://icedtea.classpath.org/pipermail/thermostat/2012-December/004726.html
reviewed-by: omajid
author | Mario Torre <neugens.limasoftware@gmail.com> |
---|---|
date | Fri, 14 Dec 2012 12:53:09 +0100 |
parents | fac3b36775fc |
children | 8211cecd53df |
files | thread/harvester/src/main/java/com/redhat/thermostat/thread/harvester/Harvester.java thread/harvester/src/test/java/com/redhat/thermostat/thread/harvester/HarvesterTest.java |
diffstat | 2 files changed, 13 insertions(+), 6 deletions(-) [+] |
line wrap: on
line diff
--- a/thread/harvester/src/main/java/com/redhat/thermostat/thread/harvester/Harvester.java Wed Dec 12 19:49:12 2012 -0500 +++ b/thread/harvester/src/main/java/com/redhat/thermostat/thread/harvester/Harvester.java Fri Dec 14 12:53:09 2012 +0100 @@ -104,7 +104,7 @@ } isConnected = true; - harvester = threadPool.scheduleAtFixedRate(new HarvesterAction(), 0, 1, TimeUnit.SECONDS); + harvester = threadPool.scheduleAtFixedRate(new HarvesterAction(), 0, 250, TimeUnit.MILLISECONDS); return isConnected; } @@ -119,6 +119,11 @@ } harvester.cancel(false); + + if (collectorBean != null) { + collectorBean = null; + } + isConnected = false; boolean stillConnected = false; @@ -166,7 +171,9 @@ ThreadSummary summary = new ThreadSummary(); - collectorBean = getDataCollectorBean(connection); + if (collectorBean == null) { + collectorBean = getDataCollectorBean(connection); + } summary.setCurrentLiveThreads(collectorBean.getThreadCount()); summary.setCurrentDaemonThreads(collectorBean.getDaemonThreadCount());
--- a/thread/harvester/src/test/java/com/redhat/thermostat/thread/harvester/HarvesterTest.java Wed Dec 12 19:49:12 2012 -0500 +++ b/thread/harvester/src/test/java/com/redhat/thermostat/thread/harvester/HarvesterTest.java Fri Dec 14 12:53:09 2012 +0100 @@ -99,8 +99,8 @@ verify(executor).scheduleAtFixedRate(any(Runnable.class), anyLong(), anyLong(), any(TimeUnit.class)); assertTrue(arg1.getValue() == 0); - assertTrue(arg2.getValue() == 1); - assertEquals(TimeUnit.SECONDS, arg3.getValue()); + assertTrue(arg2.getValue() == 250); + assertEquals(TimeUnit.MILLISECONDS, arg3.getValue()); Runnable action = arg0.getValue(); assertNotNull(action); @@ -148,8 +148,8 @@ verify(executor, times(1)).scheduleAtFixedRate(any(Runnable.class), anyLong(), anyLong(), any(TimeUnit.class)); assertTrue(arg1.getValue() == 0); - assertTrue(arg2.getValue() == 1); - assertEquals(TimeUnit.SECONDS, arg3.getValue()); + assertTrue(arg2.getValue() == 250); + assertEquals(TimeUnit.MILLISECONDS, arg3.getValue()); Runnable action = arg0.getValue(); assertNotNull(action);