如果我们使用自定义并发队列来解决此问题,为什么我们使用dispatch_sync进行读取,而使用dispatch_async进行写入呢?
我们也不能使用dispatch_async进行读取吗?
这里有什么区别?
答案 0 :(得分:0)
我们也不能使用dispatch_async进行读取吗?
否,dispatch_async
说:“调度此代码块以异步方式运行,但不要等待它完成。”但是“读取器”的目的是提供对该值的线程安全访问并返回该值。如果您使用dispatch_async
,则可以在dispatch_async
块有机会运行之前从“阅读器”方法返回。