Я бы поместил операцию разбора в NSOperation, внутри очереди операций. Затем он может выполняться в фоновом потоке (обратите внимание, что вам нужно проделать дополнительную работу, чтобы это произошло для асинхронных операций в NSOperation).
Когда синтаксический анализ завершен, сохраните результаты там, где могут видеть другие контроллеры, и отправьте уведомление, что объект готов. Вы также можете отправить уведомление об ошибках, чтобы контроллеры, ожидающие завершения загрузки, знали, что они никогда не получат объект.
Вы также можете использовать делегата, как заметил Алекс, но уведомления, как правило, более гибкие, так как тогда вы можете иметь несколько различных объектов, реагирующих на нагрузку.