В последнее время я много работаю с GCD, асинхронным рендерингом и извлечением данных, и мне действительно нужно отточить ментальную модель того, как выполняется асинхронность.
Я хочу сосредоточиться на setNeedsDisplay
и наборе методов NSURLConnectionDelegate
.
- Правильно ли называть setNeedsDisplay асинхронным? Я часто вызываю его через
dispatch_async(dispatch_get_main_queue(), ^{})
, что меня смущает. - Обратные вызовы
NSURLConnectionDelegate
описываются как асинхронные, но на самом деле они не выполняются одновременно в основном потоке/цикле выполнения. Я не совсем понимаю различие здесь.
В более общем плане, в современную эпоху iOS с GCD, что является лучшей практикой для создания GCD, и эти методы хорошо сочетаются друг с другом. Я просто ищу здесь общие рекомендации, так как использую их регулярно и просто стараюсь не навлекать на себя неприятностей.
С уважением,
Дуг