Trình thu gom rác mặc định cho Java 8 là gì?
Khi tôi kiểm tra JMX Beans, họ tiết lộ nó là bộ thu song song cho thế hệ mới và bộ thu nối tiếp cũ cho thế hệ cũ.
Trình thu gom rác mặc định cho Java 8 là gì?
Khi tôi kiểm tra JMX Beans, họ tiết lộ nó là bộ thu song song cho thế hệ mới và bộ thu nối tiếp cũ cho thế hệ cũ.
Câu trả lời:
Chọn bộ thu gom rác mặc định (trong số những thứ khác) được gọi là quy trình công thái học của JVM. Quá trình này phụ thuộc vào loại máy của bạn.
Vì thực tế tất cả các máy đều có 2 CPU trở lên, một máy thực tế luôn được JVM coi là cấp máy chủ. Đó là lý do tại sao bạn sẽ tìm thấy rất nhiều tài liệu tham khảo coi bộ thu gom song song là bộ thu gom rác mặc định.
Java có bốn loại trình thu gom rác (Lên đến phiên bản 10), nhưng sau khi phát hành ổn định java 11, nó sẽ có 5 loại. Đó là:-
S GC
P GC
CMS GC
G1 GC
ZGC
Triển khai mặc định của GC trong java -
JVM GC
Java 7 - P GC Java 8 - P GC Java 9 - G1 GC Java 10- G1 GC Java 11- Z GC(I am not sure but it would be default GC of java 11)
Thêm chi tiết cho ZGC, vui lòng truy cập
http://openjdk.java.net/projects/zgc/
https://www.opsian.com/blog/javas-new-zgc-is-very-ex Fun/
Lưu ý: Nếu bạn muốn xác minh, GC nào hiện đang được JVM sử dụng, bạn có thể sử dụng lệnh sau để hiển thị GC mặc định: -
$ java -XX:+PrintCommandLineFlags -version
Nếu bạn muốn thiết lập GC theo nhu cầu của mình, bạn có thể thực hiện việc này bằng lệnh sau. Ở đây tôi sẽ đặt G1 GC làm GC mặc định.
$ java -XX:+UseG1GC -XX:+PrintCommandLineFlags -version
For more details , please visit
https://javapapers.com/java/types-of-java-garbage-collectors/
https://alvinalexander.com/java/java-jvm-how-show-which-garbage-collector-running