25
26 import jdk.test.lib.Utils;
27
28 import javax.management.InstanceNotFoundException;
29 import javax.management.MBeanException;
30 import javax.management.MBeanServer;
31 import javax.management.MalformedObjectNameException;
32 import javax.management.ObjectName;
33 import javax.management.ReflectionException;
34 import java.lang.management.ManagementFactory;
35 import java.util.LinkedList;
36 import java.util.List;
37 import java.util.Random;
38
39
40 /**
41 * @test TestUnifiedLoggingSwitchStress
42 * @key gc stress
43 * @summary Switches gc log level on fly while stressing memory/gc
44 * @requires !vm.flightRecorder
45 * @library /test/lib /
46 * @modules java.management java.base/jdk.internal.misc
47 *
48 * @run main/othervm -Xmx256M -Xms256M
49 * gc.logging.TestUnifiedLoggingSwitchStress 60
50 */
51
52 class MemoryStresser implements Runnable {
53 public static volatile boolean shouldStop = false;
54
55 private final List<byte[]> liveObjects = new LinkedList<>();
56 private final List<byte[]> liveHObjects = new LinkedList<>();
57 private int maxSimpleAllocationMemory = 0;
58 private int usedMemory = 0;
59
60 /**
61 * Maximum amount of huge allocations
62 */
63 private static int H_ALLOCATION_MAX_COUNT = 4;
64 /**
|
25
26 import jdk.test.lib.Utils;
27
28 import javax.management.InstanceNotFoundException;
29 import javax.management.MBeanException;
30 import javax.management.MBeanServer;
31 import javax.management.MalformedObjectNameException;
32 import javax.management.ObjectName;
33 import javax.management.ReflectionException;
34 import java.lang.management.ManagementFactory;
35 import java.util.LinkedList;
36 import java.util.List;
37 import java.util.Random;
38
39
40 /**
41 * @test TestUnifiedLoggingSwitchStress
42 * @key gc stress
43 * @summary Switches gc log level on fly while stressing memory/gc
44 * @requires !vm.flightRecorder
45 * @requires vm.gc != "Z"
46 * @library /test/lib /
47 * @modules java.management java.base/jdk.internal.misc
48 *
49 * @run main/othervm -Xmx256M -Xms256M
50 * gc.logging.TestUnifiedLoggingSwitchStress 60
51 */
52
53 class MemoryStresser implements Runnable {
54 public static volatile boolean shouldStop = false;
55
56 private final List<byte[]> liveObjects = new LinkedList<>();
57 private final List<byte[]> liveHObjects = new LinkedList<>();
58 private int maxSimpleAllocationMemory = 0;
59 private int usedMemory = 0;
60
61 /**
62 * Maximum amount of huge allocations
63 */
64 private static int H_ALLOCATION_MAX_COUNT = 4;
65 /**
|