Вопрос проверяет понимание преимуществ OperationQueue над "голым" GCD.
Зависимости между операциями.
Отмена операций.
Ограничение количества параллельных операций.
Приоритеты и качество сервиса (QoS).
1. Основные возможности:
Зависимости:
let op1 = BlockOperation { /* ... */ }
let op2 = BlockOperation { /* ... */ }
op2.addDependency(op1) // op2 начнется только после op1Отмена:
let queue = OperationQueue()
let operation = BlockOperation { /* ... */ }
queue.addOperation(operation)
operation.cancel()2. Преимущества перед GCD:
Более высокоуровневый API.
Лучший контроль над выполнением операций.
Вывод:OperationQueue подходит для сложных сценариев с зависимостями и отменами.