1
Application Receive SIGSEGV Signal

(
"0 libsystem_c.dylib _sigtramp + 38 ",
"1 PConlineBrowser PConlineBrowser + 426343 ",
"2 PConlineBrowser PConlineBrowser + 425831 ",
"3 PConlineBrowser PConlineBrowser + 426725 ",
"4 PConlineBrowser PConlineBrowser + 424051 ",
"5 Foundation __NSFireTimer + 144 ",
"6 CoreFoundation __CFRUNLOOP_IS_CALLING_OUT_TO_A_TIMER_CALLBACK_FUNCTION__ + 14 ",
"7 CoreFoundation __CFRunLoopDoTimer + 364 ",
"8 CoreFoundation __CFRunLoopRun + 1206 ",
"9 CoreFoundation CFRunLoopRunSpecific + 300 ",
"10 CoreFoundation CFRunLoopRunInMode + 104 ",
"11 GraphicsServices GSEventRunModal + 136 ",
"12 UIKit UIApplicationMain + 1080 ",
"13 PConlineBrowser PConlineBrowser + 7771 ",
"14 PConlineBrowser PConlineBrowser + 5144 "
)

ここに私のアプリに関するバック トレース情報の山があります。右側の数字が気になります。これは本当に意味があるのでしょうか?

4

1 に答える 1

3

詳細なデバッグ情報がないスタック フレームに対してこれらを取得します。これらのライブラリについてデバッガーが持つ唯一の情報はエントリ ポイント (別名、関数の開始点) であるため、関数の開始点とオフセットのみを提供できます (実際には、生のアドレスを提供することもできますが、まったく役に立たないでしょう)。

デバッガー、アセンブラーでフレームを見ると、マシンコードのどこでエラーが発生したかがわかるので、アセンブラーのデバッグを楽しむなら、これは役に立ちます。

実際には、これらを行番号に変換するためのシンボリック情報を持っているアップルに送信する必要がない限り、それらはほとんど役に立ちません。

独自の機能のためにこれらを取得する場合があります。これは、シンボルが取り除かれているために使用できないことを示唆しています。デバイスからダンプを取得してテキスト エディターで表示すると、次のようになります。答えは、オーガナイザーでダンプを開くことです。オーガナイザーは、一致するアーカイブを見つけて、そこからシンボル ファイルを使用して、オフセットを行番号に変換します。

于 2012-07-30T06:38:18.263 に答える