Избегайте копирования NSMutableArray для чтения с многопоточными записями

У меня есть класс, который использует изменяемый массив, который изменяется один раз после большого количества чтений (прибывают новые элементы).

Проблема в том, что, когда приходит время изменять массив, чтение продолжается.

В настоящее время, чтобы избежать этой проблемы, каждый раз, когда он читает что-то, он делает это поверх копии:

[[theArray copy] operation] //operation being indexOfObject:, objectAtIndex: objectsAtIndexes:, etc.

Копия становится действительно дорогой, особенно когда в этом нет необходимости (все это время, когда массив не видоизменяется).

Как я могу заблокировать массив, чтобы задержать доступ к нему, когда его мутируют?

Ответы на вопрос(3)

Ваш ответ на вопрос