Я понимаю, что вызов CLGeocoder geocodeAddressString является асинхронным, с переданным блоком для обработки обратного вызова во время завершения. Я также понимаю, что единственные переменные, которые могут быть изменены внутри блока, — это локальные переменные __block. Но мне нужно сохранить полученные CLPlacemarks в глобальной переменной NSMutableArray, и я не могу понять, как это может произойти. Доступ к любым переменным __block возможен только в рамках одного и того же метода, но в тот момент, когда они имеют какое-либо значение (т.е. внутри блока), я не могу присвоить какое-либо значение глобальному массиву. После блока переменные __block, скорее всего, не будут иметь никакого значения из-за немедленного возврата при вызове асинхронной строки geocodeAddressString.
Как я могу сохранить результаты вызова, чтобы их можно было использовать для обновления UITableView?