Цитата:
Сообщение от KBAC
Логика такая:
Создаёте пул - это такой посредник, который прячет в себе логику хранения и создания объекта.
Когда вам нужен новый объект - обращаетесь к пулу "Дай объект".
Пул в свою очередь смотрит, есть ли у него свободные объекты. Если есть - отдаёт один из свободных, иначе создаёт новый и отдаёт его.
Когда объект вам больше не нужен (врага убили, как пример), вы отчищаете объект, отписываетесь от всех слушателей и говорите пулу - "возьми объект назад". Пул сохраняет возвращённый объект в список свободных объектов.
Для отчистки объекта удобно заводить у него специальный метод - reset(), например. Но от слушателей всё равно придётся отписываться руками.
Похоже я пару страниц не прочитал. Ок.
|
Спасибо, понимаю, что к чему