Клуб API Карт

Как победить асинхронность обратного геокодирования?

ysedin
21 июня 2011, 18:38
Столкнулся с очередной проблемкой. Есть пара координат, необходимо в цикле произвести обратное их геокодирование и сохранить в базу. Как это сделать если геокодирование - асинхронно. Если кто-то сталкивался с этим подскажите, пожалуйста.
5 комментариев
Подписаться на комментарии к посту

А в чем проблема?

В результате работы геокодера вызывается обработчик - там и делайте что вам нужно. И без разницы пара координат или десяток.

И кстати может быть для вашей задачи правильней будет использовать геокодер чере http

проблема в том, определить момент когда прийдёт ответ. Если запустить цикл и в него поместить массив из 5 координат, то цикл не будет ждать, пока прийдёт ответ о геокодировании.

Да, цикл не будет ждать.

Но при создании геокодера вы указываете функцию, которая вызывается после завершения геокодирования.

В вашем случае эта функция вызовется пять раз - отдельно с результатами для каждой точки.

решил проблему путём сохранения уникального идентификатора для каждой пары координат и последующем сопоставлении идентификатора и пары координат при получении ответа от yandex сервера