在此示例中,queue.sync
之间有什么区别?和queue.async
var queue = DispatchQueue(label: "sample", qos: .background)
queue.sync {
//some code
}
queue.async {
//some code
}
最佳答案
两个片段都将一个闭包附加到队列中。
但有一点不同。
同步
Synch 将等待闭包执行后再处理下一行。
因此,在这种情况下,print("Hello")
总是在闭包之后执行。
queue.sync {
//some code
}
print("Hello")
异步
在这种情况下,闭包被添加到队列中,然后执行下一行。因此 print("Hello")
可以在闭包之前执行。
queue.async {
//some code
}
print("Hello")
关于ios - swift 中的异步和同步有什么区别,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60084646/