Нужно ли создавать подкласс NSOperation для каждого веб-сервиса?

Я всегда получаю данные из веб-сервисов, используя GCD, Теперь я должен использовать NSOperation а также NSOperationQueue, Но я запутался с работой NSOperation а также NSOperationQueue,

Предположим, у меня есть два API, API входа и API регистрации. Должен ли я создать два NSOperation подклассы для него, такие как LoginOperation и RegistrationOperation? Или я мог бы отправить различные запросы в одном NSOperationClass?

И как я должен держать NSOperationQueue Центральный класс, так что я продолжаю добавлять объекты класса операций к нему.

Пожалуйста, предоставьте ссылку на этот тип проекта.

1 ответ

Это будет варьироваться от проекта к проекту, но, как правило, вы можете иметь только один базовый подкласс NSOperation и подкласс, который для ваших конкретных запросов, таких как LoginOperation или же RegistrationOperation, Вы можете посмотреть в AFNetworking так как это уже очень хорошо зарекомендовавшая себя сетевая библиотека, которая подклассы NSOperation,

В зависимости от того, что делает ваше приложение и как вы хотите управлять своими запросами, вам может понадобиться больше одного NSOperationQueue, Это поможет вам отслеживать различные запросы и знать, были ли они выполнены, если это необходимо, необходимо синхронизировать их и т. Д.

Посмотрите на это для чего-то более глубокого: http://www.objc.io/issue-2/concurrency-apis-and-pitfalls.html

Другие вопросы по тегам