- Главная (Main Queue):
- Тип: Последовательная (Serial).
- Особенность: Выполняет задачи в основном потоке (main thread) пользовательского интерфейса. Все обновления UI должны происходить именно здесь.
- Глобальные (Global Queues):
- Тип: Параллельные (Concurrent).
- Особенности: Несколько очередей с разным приоритетом (High, Default, Low, Background). Задачи могут выполняться одновременно, но порядок их завершения не гарантирован. Подходят для ресурсоемких операций, не связанных с UI.
- Пользовательские (Custom Queues):
- Тип: Могут быть Sequential или Concurrent.
- Особенности: Создаются разработчиком для специфических целей. Позволяют изолировать задачи и управлять их выполнением.
| Тип очереди | Типичное использование | Безопасность для UI |
|---|
| Главная | Обновление UI, обработка событий UI | Да |
| Глобальные | Фоновые вычисления, сетевые запросы | Нет |
| Пользовательские | Организация специфических фоновых задач, изоляция | Зависит от реализации |
Пример создания пользовательской очереди:
swift