Übung GC

Richtig viel Müll erzeugen:

import java.util.*;
class Garbage {
    static long sum (int top) {
        List<Integer> l = new LinkedList<Integer>();
        for (int x = 0; x < top; x++) {
            l.add (x);
        }
        long result = 0;
        for (int x : l) {
            result += x;
        }
        return result;
    }
    public static void main (String [] args) {
        for (int i = 0; i < 1000*1000; i+=10000) {
            System.out.println ( i + " : " + sum(i));
        }
    }
}
ausführen mit:
time java  -Xmx400M -XX:NewSize=40M -XX:+PrintGCDetails  Garbage
verschiedene Werte für NewSize ausprobieren, Messungen erklären.



Johannes Waldmann 2008-01-23