diff options
| -rw-r--r-- | test/004-ThreadStress/src-art/Main.java | 36 |
1 files changed, 3 insertions, 33 deletions
diff --git a/test/004-ThreadStress/src-art/Main.java b/test/004-ThreadStress/src-art/Main.java index b8bfafb2d3..3a89f4f166 100644 --- a/test/004-ThreadStress/src-art/Main.java +++ b/test/004-ThreadStress/src-art/Main.java @@ -26,7 +26,6 @@ import java.util.List; import java.util.Map; import java.util.Set; import java.util.concurrent.Semaphore; -import java.util.concurrent.locks.LockSupport; // Run on host with: // javac ThreadTest.java && java ThreadStress && rm *.class @@ -252,31 +251,6 @@ public class Main implements Runnable { } } - private final static class TimedPark extends Operation { - private final static int SLEEP_TIME = 100; - - public TimedPark() {} - - @Override - public boolean perform() { - LockSupport.parkNanos(this, 100*1000000); - return true; - } - } - - private final static class UnparkAllThreads extends Operation { - public UnparkAllThreads() {} - - @Override - public boolean perform() { - Set<Thread> threads = Thread.getAllStackTraces().keySet(); - for (Thread candidate : threads) { - LockSupport.unpark(candidate); - } - return true; - } - } - private final static class SyncAndWork extends Operation { private final Object lock; @@ -346,9 +320,7 @@ public class Main implements Runnable { frequencyMap.put(new NonMovingAlloc(), 0.025); // 5/200 frequencyMap.put(new StackTrace(), 0.1); // 20/200 frequencyMap.put(new Exit(), 0.225); // 45/200 - frequencyMap.put(new Sleep(), 0.125); // 15/200 - frequencyMap.put(new TimedPark(), 0.025); // 5/200 - frequencyMap.put(new UnparkAllThreads(), 0.025); // 5/200 + frequencyMap.put(new Sleep(), 0.125); // 25/200 frequencyMap.put(new TimedWait(lock), 0.05); // 10/200 frequencyMap.put(new Wait(lock), 0.075); // 15/200 frequencyMap.put(new QueuedWait(semaphore), 0.05); // 10/200 @@ -369,11 +341,9 @@ public class Main implements Runnable { private final static Map<Operation, Double> createLockFrequencyMap(Object lock) { Map<Operation, Double> frequencyMap = new HashMap<Operation, Double>(); frequencyMap.put(new Sleep(), 0.2); // 40/200 - frequencyMap.put(new TimedWait(lock), 0.1); // 20/200 - frequencyMap.put(new Wait(lock), 0.1); // 20/200 + frequencyMap.put(new TimedWait(lock), 0.2); // 40/200 + frequencyMap.put(new Wait(lock), 0.2); // 40/200 frequencyMap.put(new SyncAndWork(lock), 0.4); // 80/200 - frequencyMap.put(new TimedPark(), 0.1); // 20/200 - frequencyMap.put(new UnparkAllThreads(), 0.1); // 20/200 return frequencyMap; } |