Posted in

Ngày 1: Tối ưu hóa Garbage Collection trong Java.

Ngày 1: Tối ưu hóa Garbage Collection trong Java.

Java sử dụng hệ thống Garbage Collection (GC) để giải phóng bộ nhớ không được sử dụng. Tuy nhiên, việc hiểu rõ và tối ưu hóa GC sau này sẽ giúp bạn tăng hiệu suất của ứng dụng.

Ví dụ: Java có nhiều thuật toán GC, nhưng chúng ta sẽ xem xét thuật toán Mark and Sweep. Trong thuật toán này, GC lần qua tất cả các đối tượng trong heap, đánh dấu hầu hết các đối tượng nếu chúng đang được tham chiếu. Sau đó, GC quét lại heap và giải phóng bộ nhớ cho tất cả các đối tượng không được đánh dấu.

Cách dùng: Có thể tinh chỉnh GC bằng cách truyền các tham số JVM vào lúc khởi động. Ví dụ, “-XX: + UseParallelGC” sẽ sử dụng thuật toán Parallel GC.

Trường hợp đặc biệt: Trong một số trường hợp, GC có thể gây ra dừng đột ngột trong ứng dụng (còn được gọi là GC pauses). Trong loại tình huống này, có thể cần phải tinh chỉnh tham số GC để giảm thiểu thời gian dừng đột ngột.

Câu hỏi phỏng vấn:
1) Garbage Collection trong Java hoạt động như thế nào?
2) Liệt kê một số thuật toán Garbage Collection trong Java.
3) Làm thế nào để tối ưu hóa quá trình Garbage Collection?
4) Giải thích về tham số JVM và cách truyền nó vào lúc khởi động.
5) Làm thế nào để xử lý dừng đột ngột do Garbage Collection (GC pauses)?

Dựa vào kiến thức bạn đã ôn trong ngày, hãy tự trả lời những câu hỏi trên.

Leave a Reply

Your email address will not be published. Required fields are marked *