Технологии

У меня есть программа написанная на java на андроиде. В этой программе запускается процедура main() в фоновом потоке, которая представляет из себя цикл в котором выделяется память под объекты - вопрос №4359100

некоторого массива (массив у меня большой!). Все работает хорошо, одна только проблема. Java выделяет для программы 25мб озу, если нужно еще, она еще выделяет 25мб и т.д., при этом, при выделении памяти, программа притормаживает на 2-3 сек. В скором времени, мои данные становятся увесистыми, и программе нужно много раз получить по 25 мб, из-за чего она надолго замирает. Как мне установить в программу, чтоб она «хватала» памяти не по 25мб, а, скажем, по 100мб? Свободного озу у моего телефона 1гб. Код программы: private void main () { Position[] Pos = new Position[10000000]; int z = 0; int xx = 1; while (xx <= 4000) { if (xx >= 3200) { setTextR(xx + "-" + Runtime.getRuntime().freeMemory() + " "); } int i = 1; while (i <= xx) { Position p = new Position(); p.questions = new NodeList(); p.vars = new LinkedList<Var>(); Pos[z] = p; i++; z++; } xx++; } }

июнь 11, 2021 г.

  • Всего ответов: 0

Похожие вопросы

Решено

Закрыт

vip

300 i

Не отображаются картинки в AutoCAD

март 2, 2014 г.

Технологии