1

CPUとメモリの使用量に関して、Objective-CのCスタイルのコーディングブロックはどの程度効率的ですか?私はObjective-C用のブルートフォーシングライブラリを作成していますが、可能な限り最適化する必要があります。使用されているコードブロックは、ブルートフォーサーの反復ごとに呼び出されます。

4

1 に答える 1

2

関数型言語と同様に、ブロックの作成(クロージャ)にはヒープへの割り当てが必要になる場合があります(これはブロックをコピーするときに確実に発生します。内部フレームでブロックを使用するだけでコンパイラが回避できる可能性があります)。

いずれにせよ、これがあなたのループの外で起こった場合、あなたは一度代金を支払います。ブロックの呼び出しは、C ++インスタンスオブジェクトの仮想メソッドの呼び出しとほぼ同じコストになるはずです(これはほぼ同じタスクであるため)

于 2012-12-03T17:51:03.890 に答える