You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@commons.apache.org by ps...@apache.org on 2014/05/26 02:40:21 UTC
svn commit: r1597498 -
/commons/proper/pool/trunk/src/test/java/org/apache/commons/pool2/impl/TestGenericObjectPool.java
Author: psteitz
Date: Mon May 26 00:40:21 2014
New Revision: 1597498
URL: http://svn.apache.org/r1597498
Log:
Made pre-borrow delay and post-borrow hold times separately configurable in TestThread.
Modified:
commons/proper/pool/trunk/src/test/java/org/apache/commons/pool2/impl/TestGenericObjectPool.java
Modified: commons/proper/pool/trunk/src/test/java/org/apache/commons/pool2/impl/TestGenericObjectPool.java
URL: http://svn.apache.org/viewvc/commons/proper/pool/trunk/src/test/java/org/apache/commons/pool2/impl/TestGenericObjectPool.java?rev=1597498&r1=1597497&r2=1597498&view=diff
==============================================================================
--- commons/proper/pool/trunk/src/test/java/org/apache/commons/pool2/impl/TestGenericObjectPool.java (original)
+++ commons/proper/pool/trunk/src/test/java/org/apache/commons/pool2/impl/TestGenericObjectPool.java Mon May 26 00:40:21 2014
@@ -1469,13 +1469,26 @@ public class TestGenericObjectPool exten
}
static class TestThread<T> implements Runnable {
- private final java.util.Random _random = new java.util.Random();
- // Thread config items
+ /** source of random delay times */
+ private final java.util.Random _random;
+
+ /** pool to borrow from */
private final ObjectPool<T> _pool;
+
+ /** number of borrow attempts */
private final int _iter;
- private final int _delay;
+
+ /** delay before each borrow attempt */
+ private final int _startDelay;
+
+ /** time to hold each borrowed object before returning it */
+ private final int _holdTime;
+
+ /** whether or not start and hold time are randomly generated */
private final boolean _randomDelay;
+
+ /** object expected to be borrowed (fail otherwise) */
private final Object _expectedObject;
private volatile boolean _complete = false;
@@ -1501,12 +1514,19 @@ public class TestGenericObjectPool exten
public TestThread(ObjectPool<T> pool, int iter, int delay,
boolean randomDelay, Object obj) {
- _pool = pool;
- _iter = iter;
- _delay = delay;
- _randomDelay = randomDelay;
- _expectedObject = obj;
+ this(pool, iter, delay, delay, randomDelay, obj);
}
+
+ public TestThread(ObjectPool<T> pool, int iter, int startDelay,
+ int holdTime, boolean randomDelay, Object obj) {
+ _pool = pool;
+ _iter = iter;
+ _startDelay = startDelay;
+ _holdTime = holdTime;
+ _randomDelay = randomDelay;
+ _random = _randomDelay ? new Random() : null;
+ _expectedObject = obj;
+ }
public boolean complete() {
return _complete;
@@ -1519,10 +1539,12 @@ public class TestGenericObjectPool exten
@Override
public void run() {
for(int i=0;i<_iter;i++) {
- long delay =
- _randomDelay ? (long)_random.nextInt(_delay) : _delay;
+ long startDelay =
+ _randomDelay ? (long)_random.nextInt(_startDelay) : _startDelay;
+ long holdTime =
+ _randomDelay ? (long)_random.nextInt(_holdTime) : _holdTime;
try {
- Thread.sleep(delay);
+ Thread.sleep(startDelay);
} catch(InterruptedException e) {
// ignored
}
@@ -1544,7 +1566,7 @@ public class TestGenericObjectPool exten
}
try {
- Thread.sleep(delay);
+ Thread.sleep(holdTime);
} catch(InterruptedException e) {
// ignored
}