[jboss-cvs] JBoss Messaging SVN: r4320 - trunk/examples/jms/src/org/jboss/jms/example.

jboss-cvs-commits at lists.jboss.org jboss-cvs-commits at lists.jboss.org
Wed May 28 09:53:05 EDT 2008


Author: jmesnil
Date: 2008-05-28 09:53:05 -0400 (Wed, 28 May 2008)
New Revision: 4320

Modified:
   trunk/examples/jms/src/org/jboss/jms/example/PerfExample.java
Log:
JBMESSAGING-1343 - Some more tweaks to PerfExample:
- added warmup to PerfListener

Modified: trunk/examples/jms/src/org/jboss/jms/example/PerfExample.java
===================================================================
--- trunk/examples/jms/src/org/jboss/jms/example/PerfExample.java	2008-05-28 12:14:16 UTC (rev 4319)
+++ trunk/examples/jms/src/org/jboss/jms/example/PerfExample.java	2008-05-28 13:53:05 UTC (rev 4320)
@@ -225,6 +225,7 @@
       
       private PerfParams perfParams;
 
+      private boolean warmingUp = true;
       private boolean started = false;
 
       public PerfListener(CountDownLatch countDownLatch, PerfParams perfParams)
@@ -235,14 +236,31 @@
 
       public void onMessage(Message message)
       {
-         if (!started)
+         try
          {
-            started = true;
-            scheduler.scheduleAtFixedRate(command, 1, 1, TimeUnit.SECONDS);
-         }
+            if (warmingUp)
+            {
+               boolean committed = checkCommit();
+               if (messageCount.incrementAndGet() == perfParams.getNoOfWarmupMessages())
+               {
+                  log.info("warmed up after receiving " + messageCount.longValue() + " msgs");
+                  if (!committed)
+                  {
+                     checkCommit();
+                  }
+                  warmingUp = false;
+                  // reset messageCount to take stats
+                  messageCount.set(0);
+               }
+               return;
+            }
 
-         try
-         {
+            if (!started)
+            {
+               started = true;
+               scheduler.scheduleAtFixedRate(command, 1, 1, TimeUnit.SECONDS);
+            }
+
             messageCount.incrementAndGet();
             boolean committed = checkCommit();
             if (messageCount.longValue() == perfParams.getNoOfMessagesToSend())




More information about the jboss-cvs-commits mailing list