Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
当有更多的并发连接并且当连接达到特定状态时被调用的方法访问属性时,属性是否应该atomic在(NSURLConnectionDelegate)中?NSURLConnectionDataDelegate其他线程无法访问我调用的那些属性。
atomic
NSURLConnectionDataDelegate
NSURLConnection的并发性是基于运行循环的,因此只要您的对象作为委托的所有连接都是从同一个运行循环开始的,您就不必担心委托中的并发性。如果您启动在不同运行循环上安排的多个连接,那么是的,您需要保护委托对象的私有状态。原子属性很少能满足这一点。
NSURLConnection
简而言之,您要么不需要担心这一点,要么原子属性不太可能有帮助。一个简单的选择是让所有委托方法dispatch_async工作到私有串行 GCD 队列。
dispatch_async