Хорошо, поэтому я узнал о новом Swifty Dispatch API в Xcode 8. Мне весело с помощью DispatchQueue.main.async
, и я просматривал модуль Dispatch
в Xcode, чтобы найти все новые API.
Но я также использую dispatch_once
для того, чтобы такие вещи, как создание одноэлементов и одноразовая настройка, не выполнялись более одного раза (даже в многопоточной среде)... и dispatch_once
нигде не было найдено в новом диспетчерском модуле?
static var token: dispatch_once_t = 0
func whatDoYouHear() {
print("All of this has happened before, and all of it will happen again.")
dispatch_once(&token) {
print("Except this part.")
}
}