summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--test/1995-final-virtual-structural-multithread/src/art/Test1995.java6
-rw-r--r--test/2001-virtual-structural-multithread/src-art/art/Test2001.java6
-rw-r--r--test/2005-pause-all-redefine-multithreaded/src/art/Test2005.java6
3 files changed, 12 insertions, 6 deletions
diff --git a/test/1995-final-virtual-structural-multithread/src/art/Test1995.java b/test/1995-final-virtual-structural-multithread/src/art/Test1995.java
index 1ffee60a06..70734943a0 100644
--- a/test/1995-final-virtual-structural-multithread/src/art/Test1995.java
+++ b/test/1995-final-virtual-structural-multithread/src/art/Test1995.java
@@ -22,6 +22,8 @@ import java.util.Base64;
import java.util.concurrent.CountDownLatch;
public class Test1995 {
private static final int NUM_THREADS = 20;
+ // Don't perform more than this many repeats per thread to prevent OOMEs
+ private static final int TASK_COUNT_LIMIT = 1000;
public static final class Transform {
public String greetingEnglish;
@@ -107,14 +109,14 @@ public class Test1995 {
public MyThread(CountDownLatch delay, int id) {
super("Thread: " + id);
this.thr_id = id;
- this.results = new ArrayList<>(1000);
+ this.results = new ArrayList<>(TASK_COUNT_LIMIT);
this.finish = false;
this.delay = delay;
}
public void run() {
delay.countDown();
- while (!finish) {
+ while (!finish && results.size() < TASK_COUNT_LIMIT) {
Transform t = new Transform();
results.add(t.sayHi());
}
diff --git a/test/2001-virtual-structural-multithread/src-art/art/Test2001.java b/test/2001-virtual-structural-multithread/src-art/art/Test2001.java
index e6ee0ceaec..40972db643 100644
--- a/test/2001-virtual-structural-multithread/src-art/art/Test2001.java
+++ b/test/2001-virtual-structural-multithread/src-art/art/Test2001.java
@@ -25,6 +25,8 @@ import java.util.function.Supplier;
public class Test2001 {
private static final int NUM_THREADS = 20;
+ // Don't perform more than this many repeats per thread to prevent OOMEs
+ private static final int TASK_COUNT_LIMIT = 1000;
public static class Transform {
public String greetingEnglish;
@@ -167,14 +169,14 @@ public class Test2001 {
public MyThread(CountDownLatch delay, int id) {
super("Thread: " + id);
this.thr_id = id;
- this.results = new ArrayList<>(1000);
+ this.results = new ArrayList<>(TASK_COUNT_LIMIT);
this.finish = false;
this.delay = delay;
}
public void run() {
delay.countDown();
- while (!finish) {
+ while (!finish && results.size() < TASK_COUNT_LIMIT) {
Supplier<String> t = mkTransform();
results.add(t.get());
}
diff --git a/test/2005-pause-all-redefine-multithreaded/src/art/Test2005.java b/test/2005-pause-all-redefine-multithreaded/src/art/Test2005.java
index 6fdadb7a0a..efae915e38 100644
--- a/test/2005-pause-all-redefine-multithreaded/src/art/Test2005.java
+++ b/test/2005-pause-all-redefine-multithreaded/src/art/Test2005.java
@@ -22,6 +22,8 @@ import java.util.concurrent.CountDownLatch;
public class Test2005 {
private static final int NUM_THREADS = 20;
private static final String DEFAULT_VAL = "DEFAULT_VALUE";
+ // Don't perform more than this many repeats per thread to prevent OOMEs
+ private static final int TASK_COUNT_LIMIT = 1000;
public static final class Transform {
public String greetingEnglish;
@@ -108,14 +110,14 @@ public class Test2005 {
public MyThread(CountDownLatch delay, int id) {
super("Thread: " + id);
this.thr_id = id;
- this.results = new ArrayList<>(1000);
+ this.results = new ArrayList<>(TASK_COUNT_LIMIT);
this.finish = false;
this.delay = delay;
}
public void run() {
delay.countDown();
- while (!finish) {
+ while (!finish && results.size() < TASK_COUNT_LIMIT) {
Transform t = new Transform();
results.add(t.sayHi());
}