Выбор ответа Middle GCD и OperationQueue обновлено

Чем OperationQueue лучше голого GCD

Вопрос

Что даёт OperationQueue по сравнению с DispatchQueue?

Попробуйте сами

Выберите вариант, и откроется разбор.

Показать ответ и разбор

Коротко

Правильный ответ: Зависимости между операциями, их отмену и лимит параллельности. Operation это объект с состояниями (ready, executing, finished, cancelled), и очередь умеет зависимости addDependency, отмену и лимит одновременных операций.

Варианты ответа

  1. Зависимости между операциями, их отмену и лимит параллельностиправильный ответ
  2. Выполнение каждой операции в отдельном процессе с изоляцией
  3. Автоматическую потокобезопасность любого кода внутри операций
  4. Гарантированное выполнение всех операций на главном потоке

Разбор

Operation это объект с состояниями (ready, executing, finished, cancelled), и очередь умеет зависимости addDependency, отмену и лимит одновременных операций. Построена она поверх GCD. Процессов она не создаёт и потокобезопасности чужому коду не добавляет. На главном потоке работает только OperationQueue.main.

Ответьте сами, а не прочитайте

В тренажёре вопрос попадёт в повторения и вернётся, когда начнёт забываться. Плюс билеты с зачётом: 20 вопросов, не больше 2 ошибок.

Термины по теме