среда, 1 августа 2012 г.

questions: gc


----------------------------------------------------------------
-- Код:
public class GCTest {
    public static void main(String[] args) {
        while (true) {
            new Object();
        }
    }
}
-- Вопросы/задания:
1) при запуске такой программы закончится ли память (OutOfMemoryError) или она будет работать вечно?

----------------------------------------------------------------
-- Код:
public class GCTest {
    public static void main(String[] args) {
        while (true) {
            Object obj = new Object();
        }
    }
}
-- Вопросы/задания:
1) при запуске такой программы закончится ли память (OutOfMemoryError) или она будет работать вечно?

----------------------------------------------------------------
-- Код:
public class GCTest {
    public static void main(String[] args) {
        Object obj = null;
        while (true) {
            obj = new Object();
        }
    }
}
-- Вопросы/задания:
1) при запуске такой программы закончится ли память (OutOfMemoryError) или она будет работать вечно?

----------------------------------------------------------------
-- Код:
public class GCTest {
    public static void main(String[] args) {
        while (true) {

            Object[] a = new Object[1];
            Object[] b = new Object[1];
            Object[] c = new Object[1];
            a[0] = b; b[0] = c; c[0] = a;

        }
    }
}
-- Вопросы/задания:
1) при запуске такой программы закончится ли память (OutOfMemoryError) или она будет работать вечно?

----------------------------------------------------------------
-- Код:
public class GCTest {
    public static void main(String[] args) {

        Object[][] arr = new Object[3][];
        while (true) {
            Object[] a = new Object[0];
            Object[] b = new Object[0];
            Object[] c = new Object[0];
            a[0] = b; b[0] = c; c[0] = a;
            arr[0] = a; arr[1] = b; arr[2] = c;


        }
    }
}
-- Вопросы/задания:
1) при запуске такой программы закончится ли память (OutOfMemoryError) или она будет работать вечно?

----------------------------------------------------------------
-- Код:
public class GCTest {
    public static void main(String[] args) {


        Object[] arr = new Object[3];
        while (true) {
            Object[] a = new Object[0];
            Object[] b = new Object[0];
            Object[] c = new Object[0];
            a[0] = b; b[0] = c; c[0] = a;
            arr = new Object[]{a, b, c};
        }

    }
}
-- Вопросы/задания:
1) при запуске такой программы закончится ли память (OutOfMemoryError) или она будет работать вечно?