Я бы рекомендовал реализовать Пул объектов для этого вида деятельности.Потому что создание new mc_ground()
объектов замедлит работу, особенно в циклах.Выделение и освобождение памяти может быть медленным;и с помощью сборки мусора вы можете получить много вещей в памяти в любой момент времени.
Как только ваш пул создан, вы можете сделать что-то вроде debreeObject = myDebreePool.getFromPool()
, что даст вам объект из пула,Затем после вызова removeChild
для этого объекта, верните его в пул с чем-то вроде myDebreePool.returnToPool(oldDebreeObject)
.
В зависимости от ваших потребностей, вам может понадобиться пул объектов для сброса состояния объекта при возвратеЭто.В противном случае он может запомнить старые данные, которые больше не нужны.Однако, учитывая ваш пример кода, я не думаю, что это будет необходимо.
Если вы правильно реализуете свой пул объектов, вы должны увидеть значительное повышение производительности в сценарии этого типа.