Принудительное выделение памяти в Java - PullRequest
0 голосов
/ 15 ноября 2011

Мне известно, что выделение памяти явно не требуется в Java , поскольку JVM обрабатывает выделение за кулисами.Даже если мне не нужно выделять память для тестирования жадного до памяти приложения, как я могу хранить объекты с определенным числом байтов?

Текущее решение состоит в создании экземпляров массивов примитива.'байт'.Если я хочу хранить объекты объемом 5 МБ, я создаю массив байтов.

byte[] b = new byte[5000000];

Есть ли лучший способ явно выделить память в Java JVM, хотя бы только для создания / освобождения объектовизвестного размера для некоторых модульных тестов?

1 Ответ

0 голосов
/ 15 ноября 2011

Нет лучшего способа сделать это.'new' - это единственный способ явно занять память (кроме выделения стека путем вызова метода, например).

byte b = new byte[MEM_SIZE];

- самый контролируемый способ сделать это.Он не будет выделять ровно 5000000 байт, благодаря объектам, но это довольно близко.

...