Как я могу рассчитать количество объектов, которые будет удерживать куча памяти? - PullRequest
0 голосов
/ 02 сентября 2018

Я хочу кодировать / разработать алгоритм в Java, в котором я начал с ввода

variable int i=0;

while (i==0){i==1;}

создать или начать заново с var i в новом месте памяти, снова установить значение 1; цикл для присвоения значения 1 переменной var и перехода к следующей ячейке памяти.
пока память кучи не заполнится
затем рассчитать суммарные переменные, созданные и существующие в памяти, используя цикл

System.out.println(total var created);

Могу ли я сделать это на Java?

я сделал с "сколько времени, чтобы создать фиксированное число переменных в Java"

1 Ответ

0 голосов
/ 02 сентября 2018

Если я вас правильно понял, вы хотите заполнить кучу памяти. Я думаю, что создание строковых литералов в цикле сделает это;

int i = 0;
while(i < 1000){

    System.out.println("2 times" + i + "equals" + i * 2);
    i = i + 1;
}

создаст 1000 строковых литералов в постоянном пуле строк. Эти литералы не будут кандидатами на сборку мусора в течение некоторого времени, достаточного для заполнения памяти, для целей повторного использования. Таким образом, они заполнят память в конце концов. Если вы увеличите значение 1000, вы получите больше литералов.

Для дальнейшего чтения, вот сообщение в блоге

...