Trung BìnhJava iconJava

Memory leak trong Java là gì? GC có thu hồi được không?

Memory leak trong Java: object vẫn còn reference nhưng không còn cần thiết nữa, ngăn GC thu hồi. GC không thể collect object còn được tham chiếu dù không dùng.

Ví dụ: static List list = new ArrayList(); list.add(obj); nếu list không bao giờ được clear, tất cả object tích lũy mãi. Nguyên nhân phổ biến: unclosed resources (file handle, DB connection), listener không unregister, static collection tích lũy. Phòng tránh: dùng try-with-resources, unregister listener, xóa object khỏi collection khi không dùng.

Xem toàn bộ Java cùng filter theo level & chủ đề con.

Mở danh sách Java