値が変わる可能性のある単純なreadOnlyプロパティがある場合があります
@property (readonly) NSFetchedResultsController * FetchController;
@property (readonly) NSFetchRequest * FetchRequest;
@property (readonly) NSPredicate * KeywordPredicate;
値の変更は、ある種の単純なポインター操作によって、瞬く間に行われると思います。何かのようなもの
_FetchRequest = newFetchRequest;
実際の変更プロセスは大きく変わる可能性がありますが、実際の変更はその1行にある必要があります。
問題は、そのような単純なポインタ代入は常にアトミックなのかということです。その1行が実際に複数行のマシンコードで構成されていて、誰かがそれらのマシンコード間のプロパティを要求した場合はどうでしょうか。
最後に、問題は、ポインターの単純な代入演算子が常にアトミックであるかどうかです。
もしそうなら、それがアトミックであり、そうでない場合はどうなりますか?もちろん、単純な代入演算子は、複雑なオブジェクトに対してはアトミックではありません。
では、これらの単純な1行代入演算子は、どの程度アトミックなのでしょうか。ポインターとプリミティブ型の場合、常にそうなりますか?