高速化したいアプリケーションを書いています。これを行うために私が考えた 1 つの方法は、ポインターのストレートな C スタイル配列を使用することNSArray
から使用することへ切り替えることです。NSMutableArray
私は単純にやろうとしました:
MyObject** objects = (MyObject**) malloc(N/2*sizeof(MyObject*))
ARC を使用すると、 ** オブジェクトをどう処理するかがわからないため、これによりコンパイラ エラーが報告されます。これは、ブリッジ ディレクティブを追加することで修正できます。
私の質問は、このメモリがどのように処理されているか、C とObjective-C
オブジェクトを混在させてメモリ管理を行う方法です。
2つの解決策は
MyObject* __weak* objects = (MyObject* __weak*) malloc(N/2*sizeof(MyObject*));
MyObject* __strong* objects = (MyObject* __strong*) malloc(N/2*sizeof(MyObject*));
これらの 2 つの配列の違いは何ですか。また、完了したらそれらを解放/解放するにはどうすればよいですか。NSArrays
これにより速度が大幅に向上しない点まで最適化されていますか?