Skip to content

Instantly share code, notes, and snippets.

@jdanbrown
Forked from khotyn/GarbageCollectors.java
Last active December 15, 2015 10:29
Show Gist options
  • Save jdanbrown/5246189 to your computer and use it in GitHub Desktop.
Save jdanbrown/5246189 to your computer and use it in GitHub Desktop.
import java.io.IOException;
import java.lang.management.ManagementFactory;
import java.util.Set;
import javax.management.MBeanServer;
import javax.management.ObjectName;
/**
* Print the Collector used in the program.
* @author khotyn
*/
public class GarbageCollectors {
public static void main(String[] args) throws InterruptedException, IOException {
MBeanServer server = ManagementFactory.getPlatformMBeanServer();
Set<ObjectName> names = server.queryNames(null, null);
for (ObjectName name : names) {
if (name.toString().contains("GarbageCollector")) {
System.out.println(" " + name.getKeyProperty("name"));
}
}
}
}
for flag in \
-client \
-server \
-XX:+UseSerialGC \
-XX:+UseParallelGC \
-XX:+UseParNewGC \
-XX:+UseParallelOldGC \
-XX:+UseConcMarkSweepGC \
-XX:+UseG1GC
do
echo $flag
java $flag GarbageCollectors
done
-client
ConcurrentMarkSweep
ParNew
-server
PS MarkSweep
PS Scavenge
-XX:+UseSerialGC
Copy
MarkSweepCompact
-XX:+UseParallelGC
PS MarkSweep
PS Scavenge
-XX:+UseParNewGC
ParNew
MarkSweepCompact
-XX:+UseParallelOldGC
PS MarkSweep
PS Scavenge
-XX:+UseConcMarkSweepGC
ConcurrentMarkSweep
ParNew
-XX:+UseG1GC
G1 Old Generation
G1 Young Generation
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment