Einzelnen Beitrag anzeigen

janjan

Registriert seit: 16. Jan 2003
Ort: Bonn ("links über Königswinter ")
240 Beiträge
 
Delphi 4 Standard
 
#1

Und nochmal ne Frage zu Streams...

  Alt 12. Mär 2003, 16:10
Ich hab in meinem Projekt zwei Streams:

Delphi-Quellcode:
var
  DateiStream: TFileStream;
  MemoryStream: TMemoryStream;
Den MemoryStream benutz ich als Buffer und schreib da ca. 10 mal pro Sekunde einen String rein. Um das ganze in eine Datei zu schreiben benutz ich einen Timer eingestellt auf ca. 15-30 Sekunden.

Das OnTimer-Ereignis sieht folgendermaßen aus:

Delphi-Quellcode:
procedure TForm1.SpeicherTimerTimer(Sender: TObject);
begin
  MemoryStream.SaveToStream(DateiStream);
  MemoryStream.Clear;
end;
Ich schreibe den MemoryStream erst in eine Datei und lösche ihn dann um wieder neue Daten aufnehmen zu können.

Jetzt meine Frage:

Kann es passieren, das ich Daten 'verpasse' wenn sie zufällig genau zwischen dem SaveToStream und dem Clear eintreffen und in MemoryStream gespeichert werden?

Das da Daten ins Nirvana verschwinden hab ich anhand eines Vergleiches der gesendeten und empfangenen Daten festgestellt. Dummerweise hab ich keine Ahnung wo das passiert...
Die Wichtigkeit eines Postings im Forum ist reziprok zur Anzahl der enthaltenenen, kumulierten Ausrufungszeichen!!!
  Mit Zitat antworten Zitat