我有一个使用可变数组的类,该数组在大量读取(新项目到达)后修改一次。
问题是,当需要对数组进行变异时,读取会不断出现。
目前为了避免这个问题,它每次读取它在副本上执行的操作:
[[theArray copy] operation] //operation being indexOfObject:, objectAtIndex: objectsAtIndexes:, etc.
副本变得非常昂贵,尤其是在不需要的时候(所有那些数组没有发生突变的时候)。
如何锁定数组以延迟对其进行突变时的访问?