コアデータやスレッディングなどを使用してアプリケーションでARCを使用していますが、クラッシュすることなくコアデータをスレッディングで動作させるためにすべてのハードワークを実行した後、次の理由で新しいクラッシュが発生しています-
double free*** set a breakpoint in malloc_error_break to debug
これをどのように処理する必要がありますか?オブジェクトの保持数を制御することはできません。
コアデータやスレッディングなどを使用してアプリケーションでARCを使用していますが、クラッシュすることなくコアデータをスレッディングで動作させるためにすべてのハードワークを実行した後、次の理由で新しいクラッシュが発生しています-
double free*** set a breakpoint in malloc_error_break to debug
これをどのように処理する必要がありますか?オブジェクトの保持数を制御することはできません。
誰が割り当てを破棄したかを知りたい場合:
メッセージが示唆するように単に壊すことはあなたに手がかりを与えるでしょう。
誰が割り当てを作成したかを知りたい場合:
これは、mallocスタックロギングを使用してコマンドラインから実行することもできますが、Instrumentsを使用するためのより穏やかな入門書になる場合があります。機器で割り当て記録を有効にしてプログラムを実行し、問題を再現してから、ダブルフリーの機器でアドレスを検索します。これにより、割り当ての作成のバックトレースが表示されます。次に、その割り当てが2回解放された理由を理解します。