double-free - *** setzen Sie einen Haltepunkt in malloc_error_break zum Debuggen in BOGEN
Bin ich mit der ARC in meinen Anwendungen mit core data und das einfädeln etc nach all der harten Arbeit zu bekommen, Kern-Daten-Arbeit mit Gewinde ohne Abstürze jetzt bin ich immer ein neuer crash mit der Grund-
double free*** set a breakpoint in malloc_error_break to debug
Wie soll ich damit umgehen? Ich habe keine Kontrolle über die Objekte zu behalten zählt.
Das hat nichts zu tun mit den Objekten' behalten zählt. Diese Nachricht ist ein glibc-built-in error-Meldungen. Dieser Besondere Punkte aus, die Sie haben explizit verwendet, free() auf den gleichen Speicherbereich zweimal.
Nein, ich habe nichts getan, wie free() oder malloc().
Dann könnten Sie bitte ein wenig mehr debug-Informationen? Wie einige Fehlermeldungen mehr, vielleicht youl sollte das kompilieren mit -g und machen Sie einen backtrace in gdb usw. sonst können wir nicht wirklich helfen...
Wo ist Ihre app Stoppt, wenn Sie den empfohlenen Haltepunkt? Das ist ein gutes Gebiet des Codes genauer untersuchen.
Wie bekomme ich den backtrace, wie Sie sagten..
Nein, ich habe nichts getan, wie free() oder malloc().
Dann könnten Sie bitte ein wenig mehr debug-Informationen? Wie einige Fehlermeldungen mehr, vielleicht youl sollte das kompilieren mit -g und machen Sie einen backtrace in gdb usw. sonst können wir nicht wirklich helfen...
Wo ist Ihre app Stoppt, wenn Sie den empfohlenen Haltepunkt? Das ist ein gutes Gebiet des Codes genauer untersuchen.
Wie bekomme ich den backtrace, wie Sie sagten..
InformationsquelleAutor Yogesh Maheshwari | 2012-05-14
Du musst angemeldet sein, um einen Kommentar abzugeben.
Verwenden Sie es nur für Testzwecke. Während er bauen, entfernen Sie den Verweis!!
Link scheint down zu sein (nie geladen). Können Sie vielleicht geben einige Einblicke in das, was getan werden muss. Ich habe verwendet, Zombies in der Vergangenheit, aber nicht ausgiebig. @NaveenThunga (danke!)
InformationsquelleAutor Naveen Thunga
Wenn Sie wissen wollen, zerstört die Zuordnung:
Einfach brechen, wie die Meldung suggeriert wird, geben Sie Hinweise.
Wenn Sie wissen wollen, wer erstellt die Zuordnung:
Obwohl Sie können dies auch über die Befehlszeile mit dem malloc-stack einloggen, können Sie eine sanftere Einführung in die Instrumente. Das Programm mit der Zuordnung der Aufnahme aktiviert Instrumente, reproduzieren Sie das Problem, dann suchen Sie die Adresse in Instrumente der Doppel-frei-es wird zeigen Ihnen die Ablaufverfolgung der Zuteilung der Schöpfung. dann Abbildung, warum diese Aufteilung wurde befreit zweimal.
ich vermute, du hast die Suche nicht zuerst -- ich eingegeben
malloc_error_break
in stack-überlauf. das erste Ergebnis beantwortet deine Frage (Schritt für Schritt): stackoverflow.com/questions/6923853/...Ich hatte nach diesen Schritten (addition der
malloc_error_break
symbolischen Haltepunkt), aber es wollte nicht aufhören, irgendwo in meinem code und wieder berichtet*** error: can't allocate region *** set a breakpoint in malloc_error_break to debug
InformationsquelleAutor justin