Суть в следующем, нужно каждые 5 сек отправлять на сервер запрос и полученный ответ в виде меток обновлять на карте. Это было реализованно в первой версии карт, работает без тормозов если объектов не более 100. Сейчас переписываю код под вторую версию, столкнулся с проблемой, когда меток даже 50, браузер на пару секунд виснет намертво
Алгоритм обновления меток следующий:
я создай геоколлекцию, добавил ее на карту.
далее каждые 5 сек я ее очищаю и затем наполняю в цикле.
$.post('handler.ashx', { date: (new Date()).valueOf() }, function (response) {
_this.CollectionObj.removeAll();
eval(response);
for (i in data) {
if ((data[i].HideObj != '1') && (data[i].Longitude != '0') && (data[i].Latitude != '0')) {
point = [data[i].Latitude, data[i].Longitude];
placemark = new _this.ymaps.Placemark(point, {
iconContent: _this.HTMLTextMarker(1, 'img/PAS-GO.png', 21, 45),
hintContent: "Кораблик",
balloonContentHeader: 'Заголовок',
balloonContentBody: 'Содержимое <em>балуна</em>',
balloonContentFooter: 'Подвал',
balloonMaxWidth: 300
}, {
iconLayout: "default#imageWithContent",
iconImageHref: "",
iconImageSize: [0, 0],
hideIconOnBalloonOpen: false
});
_this.CollectionObj.add(placemark);
}
}
});