Double-buffering trong Java là gì?
- Double-buffering là quá trình vẽ graphics vào off-screen image buffer và sau đó copy nội dung của buffer lên màn hình một lần.
- Đối với complex graphics, sử dụng double-buffering có thể giảm flickering issues.
- Java Swing tự động hỗ trợ double-buffering cho tất cả components của nó.
- Double-buffering tốn nhiều memory, việc dùng nó chỉ hợp lý cho components được repaint rất thường xuyên hoặc có graphics đặc biệt phức tạp để hiển thị.
- Nếu container dùng double-buffering, các double-buffered children của nó sẽ share off-screen buffer của container, required off-screen buffer không bao giờ lớn hơn on-screen size của ứng dụng.
- Để enable double buffering, chỉ cần gọi phương thức setDoubleBuffered() (kế thừa từ JComponent) để set double-buffered property thành true cho các components nên dùng double-buffered drawing.