public class OldGenExample { // Статическая коллекция удерживает объекты в памяти private static List<byte[]> cache = new ArrayList<>(); public static void main(String[] args) { for (int i = 0; i < 100; i++) { // Крупные объекты могут сразу попасть в Old Generation byte[] bigObject = new byte[1024 * 1024 * 5]; // 5 MB // Объекты, пережившие несколько сборок в Young, // перемещаются в Old Generation cache.add(bigObject); // Имитация работы приложения try { Thread.sleep(100); } catch (InterruptedException e) {} } }}
public class OldGenExample { // Статическая коллекция удерживает объекты в памяти private static List<byte[]> cache = new ArrayList<>(); public static void main(String[] args) { for (int i = 0; i < 100; i++) { // Крупные объекты могут сразу попасть в Old Generation byte[] bigObject = new byte[1024 * 1024 * 5]; // 5 MB // Объекты, пережившие несколько сборок в Young, // перемещаются в Old Generation cache.add(bigObject); // Имитация работы приложения try { Thread.sleep(100); } catch (InterruptedException e) {} } }}