私はアイデアが不足しています。私はARCを使ってプロジェクトにEXC_BAD_ACCESS
を受け取ります。デバッガによれば、それはmain()
の範囲内です。 NSZombieEnabledはYESに設定されていますが、コールスタックやクラス/タイプなどは表示されません。インスペクタ/プロファイルでも同じです。私が得るのは、アプリケーションがクラッシュした後、しばらくの間、「セッションタイムアウト」です。ARCでmain()内のEXC_BAD_ACCESSがエラーにヒントがありません
私のコード内で見つけるのは難しいです。
私は、すべてのメソッドのentyと終了時に自分のコードの上に
NSLog(@"CrashLog: <%@:%@:%d:%s>", NSStringFromClass([self class]),
NSStringFromSelector(_cmd), __LINE__, __FILE__);
のようなトレースを設定していますが、私はまだ任意の有用なパターンを識別しませんでした。私が見ることができるのは、EXC_BAD_ACCESS
がスローされたときに、問題のすべてのメソッドが既に残っているということです。
問題を特定する方法はありますか?
Timはgdbでバックトレース(bt)を使用することを提案しました。結果は次のとおりです。
#0 0x0be87580 in TI::Favonius::BeamSearch::choose_hit_test_node()
#1 0x0be87b5f in TI::Favonius::BeamSearch::update_for_touch()
#2 0x0be8ee32 in TI::Favonius::StrokeBuildManager::update_search_for_touch()
#3 0x0be8f58f in TI::Favonius::StrokeBuildManager::key_down_or_drag_hit_test_for_UI()
#4 0x0be6ba8b in TIInputManagerZephyr::simulate_touches_for_input_string()
#5 0x0be7e5d9 in -[TIKeyboardInputManagerZephyr candidates]()
#6 0x00678345 in -[UIKeyboardImpl generateAutocorrectionReplacements:]()
#7 0x007dcaec in __71-[UITextInteractionAssistant scheduleReplacementsForRange:withOptions:]_block_invoke_0()
#8 0x007f6db2 in -[UITextSelectionView calculateAndShowReplacements:]()
#9 0x00e255fd in __NSFireDelayedPerform()
#10 0x01a03976 in __CFRUNLOOP_IS_CALLING_OUT_TO_A_TIMER_CALLBACK_FUNCTION__()
#11 0x01a03417 in __CFRunLoopDoTimer()
#12 0x019667e0 in __CFRunLoopRun()
#13 0x01965dd4 in CFRunLoopRunSpecific()
#14 0x01965ceb in CFRunLoopRunInMode()
#15 0x01ccb879 in GSEventRunModal()
#16 0x01ccb93e in GSEventRun()
#17 0x0050d38b in UIApplicationMain()
#18 0x000033e0 in main (argc=1, argv=0xbffff5fc) at /Users/Hermann/AppDev/fcApp/fcApp/main.m:16
ありがとうございました。私は非同期http要求でそれをやっています。ただし、要求しているオブジェクトのデバッグメソッド内で開いている接続をすべて取り消すことができます。しかし、私はダブルチェックします。 2のために:ありがとう。すべての関連するケースでself.varを使用していたかどうかをdoulbeで確認します。 3.私のアプリケーションには全く適用すべきではありません。しかし、あなたは "ガードmalloc"について少し具体的にすることができますか?これは私に知らせるニュースでも、あなたが何を意味しているのか分かりませんでした。 (英語は母国語ではありません)。これまでにありがとうございました。 –
Guard Mallocヘルプのリンクに従ってください。ヒープは、問題に対してより敏感になります。 –
これは直接helpfuではありませんでした。しかし、アドバイスに従うことでタイムリーなウィンドウが大幅に狭められました。アイデアがあれば根本的な原因を見つけるのがはるかに簡単です。あなたは素晴らしいブログを運営しています。 :) –