Tôi đang sử dụng H2 DB ở chế độ trong bộ nhớ để xử lý một số dữ liệu. Ứng dụng java của tôi cần giữ JVM trong khi thả và tạo lại hoặc cắt bớt hoặc bỏ tất cả các đối tượng trong H2 DB trong mỗi lần chạy. Do đó, tôi cần sử dụng tùy chọn 'DB_CLOSE_DELAY = -1' trong URL DB.H2 DB trong bộ nhớ Làm sạch RAM
Để xóa bộ nhớ sau khi lặp lại, tôi đã thử sử dụng 'TẤT CẢ TẤT CẢ CÁC ĐỐI TƯỢNG', 'TẤT CẢ TẤT CẢ CÁC MỤC TIÊU XÓA LỌC' và Cắt ngắn từng bảng một. Tất cả những điều này đạt được những gì tôi muốn bằng cách không xóa bộ nhớ hiện đang bị chiếm đóng. Kích thước cơ sở dữ liệu của tôi thay đổi từ khoảng 300MB đến 2GB. Vì vậy sau một lần lặp lại, RAM của tôi là khoảng 1 GB bị chiếm đóng và không tìm thấy bất kỳ giải pháp nào về nguyên nhân của việc này hoặc độ phân giải.
Hơi giống với điều này Clear the in memory database after every testcase. Nhưng không có dbUnit và cũng cần xóa RAM.
Có thể thực hiện việc này mà không cần dừng JVM hay không.
Cảm ơn.
Bạn có thể thực thi câu lệnh 'shutdown'. Điều này sẽ đóng kết nối và cơ sở dữ liệu. –
Cảm ơn nó đã hoạt động. Đó là những gì tôi đang tìm kiếm. – Akalanka
OK, tôi đã thêm nhận xét làm câu trả lời ngay bây giờ. –