30

iOSで「割り当て解除されたインスタンスに送信されたメッセージ」エラーを解決しようとしています。

4

3 に答える 3

42

LLDB-GDB コマンド マップ ( http://lldb.llvm.org/lldb-gdb.html ) を参照してください。スクリプトをインポートする必要があり、コマンドの名前は malloc_info になりました。もちろん、スキーム オプションで malloc スタック ロギングを有効にする必要があります。

(lldb) script import lldb.macosx.heap
(lldb) malloc_info --stack-history 0x10010d680

残念ながら、dealloc は表示されません。GDB の malloc-history でも表示されませんでしたか?

于 2013-04-24T08:45:16.650 に答える
2

楽器を使えば、正確なラインが得られるでしょう -

(XCode の場合) "Product" -> "Profile" から実行します。

これにより Instruments が起動します。そこで「ゾンビ」を選択し、バグ イベントを再現する必要があります。

ゾンビが呼び出されるとポップアップが表示されます。シェブロンを押して正確なラインを表示します

問題は通常悪い__bridge(オプションのブリッジ__brige_retained/ __bridge_transfer/ __bridge)

于 2012-09-10T11:02:11.643 に答える
0

以前は、シェルから malloc_history コマンドライン ツールを使用して、対象のプロセス ID とアドレスを指定することができました。このコマンドは、最新の Xcode のコマンド ライン ツールによってインストールされなくなったようです。:-(

于 2012-03-26T00:49:14.817 に答える