私は多くの読み込み(新しい項目が到着)の後に一度変更される可変配列を使用するクラスを持っています。NSMutableArrayをコピーしてマルチスレッドの書き込みでコピーしないようにします
問題は、時間がアレイを突然変異させるようになると、読み取りが継続することです。
現在、この問題にそれはそれはそうコピーの上にない何か読み込むたび避けるために:配列である(これらすべての回に必要がない場合は特に
[[theArray copy] operation] //operation being indexOfObject:, objectAtIndex: objectsAtIndexes:, etc.
コピーは、本当に高価になってきているが変異していない)。
突然変異している場合、配列へのアクセスを遅らせるために配列をロックするにはどうすればよいですか?
この配列をクラスのプロパティとして作成し、宣言時にアトミックにしないと、コンパイラはスレッド間であらゆる種類の同期を処理します。 – kidsid49