我有一个类,使用一个可变数组,经过大量的读取(新项目到达)后修改一次。避免复制NSMutableArray读取多线程写入
问题是,当时代来突变数组,读取不断来。
目前以避免此问题每次读的东西它这样做在复印时间:
[[theArray copy] operation] //operation being indexOfObject:, objectAtIndex: objectsAtIndexes:, etc.
副本将成为真正昂贵,尤其是当有没有必要(所有那些时候,数组是没有被突变)。
如何锁定数组,以便在突变时延迟对数组的访问?
为什么你不把这个数组作为你的类的属性,并且在声明期间使它成为原子,编译器会处理线程之间的任何类型的同步。 – kidsid49 2012-10-21 18:30:14