!
%
(
$
+
%
%
)
%
Chương trình 8.8
class GCDemo
{
public static void main(String args[])
{
int i;
long a; ,
Runtime r=Runtime.getRuntimeO;
Long valuesD =new Long[200];
System. out. print In ("Amount of free memory is" + r.freeMemoryO);
r.gcO;
System.out.println("Amount of free memory after garbage collection is
" + r.freeMemoryO);
for (a=IOOOO.i=O;i<200;a++.i++)
{
values[i] =new Long(a);
}
System.out.println("Amount of free memory after creating the array
" + r.freeMemoryO);
for (i=O;i<200;i++)
{
values[i] =null;
}
System.out.println("Arnount of free memory after garbage collection is
" + r.freeMemoryO);
}
Chúng ta khai một mảng gồm 200 phần tử, trong đó kiểu dữ liệu là kiểu Long.
Trước khi mảng được tạo ra, chúng ta phải xác định rõ số lượng bộ nhớ trống, và hiển thị
nó. Rồi thì chúng ta viện dẫn phương thức gc() của thể nghiệm Runtime (thời gian thực
thi) hiện thời. Điều này có thể hoặc không thể thực thi garbage collection. Rồi thì chúng ta
tạo ra mảng, và đang ký giá trị cho các phần tử của mảng. Điều này sẽ giảm bớt số lượng
bộ nhớ trống. Để làm các mảng phần tử thích hợp cho garbage collection, chúng ta đặt
chúng rỗng. Cuối cùng, chúng ta sử dụng phương thức gc() để viện dẫn garbage collection
lần nữa.
Kết quả xuất ra màn hình của chương trình trên như sau:
Hình 8.10 Garbage collection