Есть карта, в одном из городов на ней около 1000 меток. При перемещении карты на этот город происходит JSON запрос на сервер, в ответ получаем данные меток. Размещаем все 1000 меток на карте, пробегая циклом по массиву и добавляя все метки в кластеризатор. Затем добавляем кластеризатор на карту.
Для чего это нужно. Мы используем две коллекции, и заносим в них метки. Если в коллекции №1 есть метки, мы заносим новые метки в коллекцию №2, размещаем на карте, после чего удалям все из коллекции №1. Следующий запрос JSON поместит метки в коллекцию №2 и удалит все из №1 и т.д. Таким образом при перемещении по карте сначала подгружаются новые данные, затем стиратся устаревшие.
Сейчас используем таймер, кторый стирает устаревшие данные через 2 секунды, но это не правильно.
Как отследить, что на карте размещены все метки, которые были получены через JSON, чтобы потом удалить ненужные объекты? На загрузку и обработку всех меток кластеризатором уходит примерно 1,5-2 сек.