DevPrep

Все темы › Что выведет? Головоломки с собеседований

Что напечатает этот GCD-код? (main.sync и run loop)

Senior PRO

Задача

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

Потренируйтесь перед собеседованием

В DevPrep эти ответы превращаются в задачи на минуту: что напечатает код, найди баг, пробное собеседование. По задаче в день.

Скачать DevPrep в App Store