summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--test/074-gc-thrash/src/Main.java29
1 files changed, 20 insertions, 9 deletions
diff --git a/test/074-gc-thrash/src/Main.java b/test/074-gc-thrash/src/Main.java
index 78413f3676..6ee7dce503 100644
--- a/test/074-gc-thrash/src/Main.java
+++ b/test/074-gc-thrash/src/Main.java
@@ -183,7 +183,11 @@ class Robin extends Thread {
}
private String makeString(int val) {
- return new String("Robin" + val);
+ try {
+ return new String("Robin" + val);
+ } catch (OutOfMemoryError e) {
+ return null;
+ }
}
}
@@ -302,7 +306,11 @@ class Deep extends Thread {
}
private String makeString(int val) {
- return new String("Deep" + val);
+ try {
+ return new String("Deep" + val);
+ } catch (OutOfMemoryError e) {
+ return null;
+ }
}
}
@@ -319,13 +327,16 @@ class Large extends Thread {
Main.startupDelay();
while (!Main.quit) {
- chunk = new byte[100000];
- pretendToUse(chunk);
-
- count++;
- if ((count % 500) == 0) {
- Main.sleep(400);
- sleepCount++;
+ try {
+ chunk = new byte[100000];
+ pretendToUse(chunk);
+
+ count++;
+ if ((count % 500) == 0) {
+ Main.sleep(400);
+ sleepCount++;
+ }
+ } catch (OutOfMemoryError e) {
}
}