Themabewertung:
  • 0 Bewertung(en) - 0 im Durchschnitt
  • 1
  • 2
  • 3
  • 4
  • 5
Leck in Ablaufroutinen?
#7
Es gibt eine Routine, die Speicher für Blöcke bis 64 Bytes effektiv verwaltet. Die hat wesentlich weniger Lecks als die Alte, nämlich keine mehr. Allerdings gibt sie die Blöcke beim Beenden des Programmes nicht explizit zurück. Die Änderung wäre einfach, nur hatte eine gut funktionierende Version bei mir erste Priorität.

Du bist übrigens gerne eingeladen, den code durchzusehen. Ich bin ziemlich sicher, es gibt ein Leck im Leitungskode beim verbinden zweier Leitungen. Alle Versuche, es zu beseitigen führten aber zu Abstürzen.

Was soll man da machen? Zumal Simutrans wegen der SDL nicht unter Windows debugbar ist (da SDL der main-thread ist) und mein Linux nach der x-ten Neuinstallation immer noch nach ca. 5-30 Minuten vermutlich wegen einem "spurious Interrupt" komplett einfriert.

Mit "printf" konnte ich den Fehler jedenfalls nicht weiter einkreisen. valgrind gibt korrekte Statements als Fehler aus. Was soll ich da machen? (Und ich habe wirklich Erfahrung mit printf-Debugging von Mikrocontrollern und PalmOS aus der Frühzeit.)

Malloc reicht die Blöcke eh durch und gibt am Ende alles frei, das hat keine hohe Priorität. Wichtiger war mir, dass im Spiel nichts verloren geht bzw. ordentlich freigegeben wird.
Zitieren


Nachrichten in diesem Thema
Leck in Ablaufroutinen? - von Uranor - 14-08-2005, Sunday-19:49:04
[Kein Betreff] - von prissi - 14-08-2005, Sunday-23:38:03
[Kein Betreff] - von Uranor - 15-08-2005, Monday-06:15:43
[Kein Betreff] - von prissi - 15-08-2005, Monday-10:58:27
[Kein Betreff] - von Uranor - 15-08-2005, Monday-11:39:42
[Kein Betreff] - von millo - 16-08-2005, Tuesday-18:59:35
[Kein Betreff] - von prissi - 16-08-2005, Tuesday-21:59:17
[Kein Betreff] - von Uranor - 16-08-2005, Tuesday-23:38:37

Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste