Einzelnen Beitrag anzeigen

hirnstroem

Registriert seit: 21. Sep 2005
297 Beiträge
 
Delphi 2006 Professional
 
#4

Re: IntraWeb - Speichernutzung

  Alt 8. Jun 2007, 10:57
Beim Beenden der Applikation erscheint nun folgende Meldung:

This application has leadked memory...

1 - 12 bytes: TInThreadSafeInteger x 1
21- 28 bytes: TIdCriticalSection x 2
61 - 68 bytes: TRxThread x 1, TBusScanThread x 1

Die ersten zwei Zeilen sagen mir überhaupt nichts, für letztere hingegen bin ich verantwortlich. Die zwei besagten Threads sind ständig am laufen, werden aber beim Beenden der Applikation terminiert (.Terminate) und sollten sich selber freigeben (.FreeOnTerminate := True).

Ich habe schon versucht mit ".WaitFor" darauf zu warten, bis die zwei Threads sich selber terminiert sind, da tat sich aber nichts.

Nun wage ich aber zu bezweifeln, dass dies der Grund für die übermässige Speichernutzung ist, da die Threads nichts anderes tun, als, zum einen, Pakete von Geräten welche an einem CAN-Bus angeschlossen sind zu empfangen und diese in einen Buffer abzulegen (TRxThread) und, zum anderen, den Bus in periodisch zu scannen um den daran angeschlossenen Geräten beispielsweise die Uhrzeit mitzuteilen (weil der eingesetzte Quarz-Baustein relativ schnell aus dem Takt läuft). Dabei wird aber bei beiden Threads nichts zur Laufzeit generiert, ausser die Threads selbst natürlich.
inde deus abest
  Mit Zitat antworten Zitat