Назад к вопросам
Junior — Middle
66
Что выполняется при использовании метода sync на глобальной очереди DispatchQueue в Swift?
Компании, где спрашивали
bip.ru
Ответ от нейросети
sobes.tech AI
Метод sync на глобальной очереди DispatchQueue в Swift выполняет переданный блок кода синхронно на этой очереди. Это значит, что текущий поток будет ждать завершения выполнения блока, прежде чем продолжить работу.
Если вызвать DispatchQueue.global().sync { ... }, то:
- Текущий поток блокируется до завершения выполнения блока.
- Блок выполняется на глобальной очереди (фоновом потоке).
Важно помнить, что вызов sync на той же очереди, на которой уже выполняется код, может привести к дедлоку.
Пример:
DispatchQueue.global().sync {
print("Выполняется на глобальной очереди")
}
print("Этот код выполнится после блока")