Что напечатает этот GCD-код? (main.sync и run loop)
Задача
func printMultithreading() {
print("2")
DispatchQueue.global().async {
print("3")
DispatchQueue.main.sync { print("4") }
print("5")
}
print("6")
}
print("1")
printMultithreading()
print("7")
RunLoop.main.run(until: Date(timeIntervalSinceNow: 5))
Что напечатается, в каком порядке, и что изменится без последней строки?
Продолжение ответа с кодом и уточняющими вопросами интервьюера — в приложении DevPrep.
Полный ответ — в DevPrep