Как вы заметили, в документации явно сказано: «Распределение отдельных страниц документа PDF по отдельным потокам не поддерживается. Если вы хотите использовать потоки, рассмотрите возможность создания отдельного документа для каждого потока и работы с блоком страниц в потоке».«.Хотя, чтобы адаптировать это руководство к GCD, вместо этого вы должны создать последовательную очередь для каждого «блока страниц» (где размер блока, конечно, может быть «одной страницей»), а затем создать и управлять отдельным CGPDFDocumentRef, отправляяблоки в соответствующие очереди.Защитите свои структуры данных, также заставив ваш метод получения для заданного CGPDFDocumentRef использовать ту же очередь с dispatch_sync для получения значения, и тогда это просто вопрос подключения интерфейса пользователя для отображения любой данной страницы вашего документа (или всего документа).), проходя через отдельные фрагменты так, чтобы они по-прежнему представляли собой один большой документ для всего остального кода.