【发布时间】:2017-09-16 00:54:05
【问题描述】:
我的目标是异步执行一个资源繁重的操作,并确保它在返回对象之前完成。
这是结构:
func modifyGadgets() -> [Gadget] {
var gadgetsToModify = [Gadget]() //this is already populated elsewhere
DispatchQueue.global(qos: .userInitiated).async {
//Do something to the original gadgets
for gadget in gadgetsToModify {
modifyThisGadget(gadget)
}
DispatchQueue.main.async {
return gadgetsToModify //I get a warning here saying gadgetsToModify is unused
}
}
}
除了警告之外,我也没有收到任何 Gadget 项目。
我应该如何构建它以便在完成后能够退回项目?
谢谢。
【问题讨论】:
标签: ios swift grand-central-dispatch