Cocoa は、Memory Zonesと呼ばれるページ整列メモリ領域を提供し、ゾーンを引数として取るいくつかのメモリ管理関数を提供します。
メモリのブロックを割り当てる必要があると仮定しましょう (オブジェクトではなく、任意のデータに対して)。を呼び出すmalloc(size)
と、バッファは常にデフォルト ゾーンに割り当てられます。ただし、誰かがallocWithZone:
オブジェクトをデフォルト以外の別のゾーンに割り当てていた可能性があります。NSZoneMalloc([self zone], size)
その場合、バッファと所有オブジェクトをメモリの同じ領域に保持するを使用する方がよいようです。
この習慣に従っていますか?メモリゾーンを利用したことがありますか?
更新: スタック オーバーフローでは、低レベルのトピックに関する質問に、時期尚早の最適化に関する講義で答える傾向があると思います。1993 年の NeXT ハードウェアでは、現在よりもゾーンが重要だった可能性が高いことを私は理解しています。とにかく、誰かがメモリゾーンを利用したプロジェクトについて説明できるかどうかを確認したいと思っています.