Ich habe Linux C++ Multithread-Anwendung. Jetzt ist es auf Produktionsservern getestet und hat segfault. Problem ist, dass ich diesen Fehler auf keinem meiner Testserver reproduzieren kann und keinen Zugriff auf Produktionsserver habe. Ich habe keine Müllkippe oder andere nützliche Informationen. Nur Zeile: segfault bei 0000000046bf0fb8 rip 000000000048ac6b rsp 0000000046bf0fa0 Fehler 6Linux/C++ Wie Debug Release-Anwendung
Ich mag würde Community fragen kann ich von einer solchen Linie, die Fläche verringern helfen möglicher Orte einige Informationen bekommen, wo ich suchen soll. Ich kann wegen der langsamen Geschwindigkeit kein Debug-Build für die Produktion ausführen. Was kann ich zur Veröffentlichung hinzufügen, die mir beim Debuggen helfen? Dieser Fehler sieht wie Multithread-Fehler aus und ist schwer zu reproduzieren. Aber ich bin nicht sicher, weil Anwendung mit vielen verschiedenen E-Mails von MTA funktioniert.
Plattform: Linux
Compiler line: g ++ O3 -D_REENTRANT
Danke.
upd .: Vielen Dank für Ihre Antworten. Ich kann Debug-Informationen einschließen. Ich würde gerne die grundlegenden Methoden zum Debuggen von Release-Builds kennen. Zum Beispiel habe ich Dump und Release-Version. Wie soll ich weitermachen? Was soll ich darüber lesen? Können Sie in wenigen Worten erklären, wie Sie Ihre Anwendung nach Möglichkeit debuggen? Vielen Dank.
Danke. Ich kann Debug-Informationen einschließen. Ich würde gerne die grundlegenden Methoden zum Debuggen von Release-Builds kennen. Zum Beispiel habe ich Dump und Release-Version. Wie soll ich weitermachen? Was soll ich darüber lesen? Können Sie in wenigen Worten erklären, wie Sie Ihre Anwendung nach Möglichkeit debuggen? Vielen Dank. – Dmitriy
@Dmitriy Das Debuggen von Release-Builds unterscheidet sich in keiner Weise vom Debuggen von Debug-Builds. Sie können feststellen, dass Sie bestimmte Variablen nicht sehen können, wenn Sie den Code durchgehen, da der Compiler sie möglicherweise von diesem Ort aus optimiert hat, aber ansonsten ist es genauso schwierig, einen Nicht-Release-Build zu debuggen. – lothar