You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@jmeter.apache.org by se...@apache.org on 2012/08/14 01:52:25 UTC
svn commit: r1372671 -
/jmeter/trunk/src/core/org/apache/jmeter/engine/StandardJMeterEngine.java
Author: sebb
Date: Mon Aug 13 23:52:25 2012
New Revision: 1372671
URL: http://svn.apache.org/viewvc?rev=1372671&view=rev
Log:
No point processing all thread groups when we know we only want to wait for one
Modified:
jmeter/trunk/src/core/org/apache/jmeter/engine/StandardJMeterEngine.java
Modified: jmeter/trunk/src/core/org/apache/jmeter/engine/StandardJMeterEngine.java
URL: http://svn.apache.org/viewvc/jmeter/trunk/src/core/org/apache/jmeter/engine/StandardJMeterEngine.java?rev=1372671&r1=1372670&r2=1372671&view=diff
==============================================================================
--- jmeter/trunk/src/core/org/apache/jmeter/engine/StandardJMeterEngine.java (original)
+++ jmeter/trunk/src/core/org/apache/jmeter/engine/StandardJMeterEngine.java Mon Aug 13 23:52:25 2012
@@ -360,7 +360,7 @@ public class StandardJMeterEngine implem
String groupName = startThreadGroup(group, groupCount, setupSearcher, testLevelElements, notifier);
if (serialized && setupIter.hasNext()) {
log.info("Waiting for setup thread group: "+groupName+" to finish before starting next setup group");
- pauseWhileRemainingThreads();
+ pauseWhileRemainingThreads(group);
}
}
log.info("Waiting for all setup thread groups To Exit");
@@ -393,7 +393,7 @@ public class StandardJMeterEngine implem
String groupName=startThreadGroup(group, groupCount, searcher, testLevelElements, notifier);
if (serialized && iter.hasNext()) {
log.info("Waiting for thread group: "+groupName+" to finish before starting next group");
- pauseWhileRemainingThreads();
+ pauseWhileRemainingThreads(group);
}
} // end of thread groups
if (groupCount == 0){ // No TGs found
@@ -422,7 +422,7 @@ public class StandardJMeterEngine implem
String groupName = startThreadGroup(group, groupCount, postSearcher, testLevelElements, notifier);
if (serialized && postIter.hasNext()) {
log.info("Waiting for post thread group: "+groupName+" to finish before starting next post group");
- pauseWhileRemainingThreads();
+ pauseWhileRemainingThreads(group);
}
}
waitThreadsStopped(); // wait for Post threads to stop
@@ -432,22 +432,15 @@ public class StandardJMeterEngine implem
}
/**
- * Loop with 1s pause while thread groups have threads running
+ * Loop with 1s pause while thread group has threads running
*/
- private void pauseWhileRemainingThreads() {
- while (running && groupsHaveThreads()) {
+ private void pauseWhileRemainingThreads(AbstractThreadGroup threadGroup) {
+ while (running && threadGroup.numberOfActiveThreads() > 0) {
pause(1000);
}
}
/**
- * @return true if remaining threads
- */
- private boolean groupsHaveThreads() {
- return countStillActiveThreads()>0;
- }
-
- /**
* @return total of active threads in all Thread Groups
*/
private int countStillActiveThreads() {