nntp2http.com
Posting
Suche
Optionen
Hilfe & Kontakt

Laenger in Datei schreiben, trotzdem extern Stichproben nehmen

Von: Juergen Beisert (jbeisert@netscape.net) [Profil]
Datum: 10.04.2008 14:58
Message-ID: <ftl2uc$la$02$1@news.t-online.com>
Newsgroup: de.comp.os.unix.programming
Hallo,

ich habe ein Programm, das über einen längeren Zeitraum Meßdaten in eine
Datei schreibt. Dabei ist dann auch noch die zlib beteiligt, um die
Dateigröße in einem erträglichen Maß zu halten. Die Datei ist mit
fopen("dateiname", "w"); erstellt worden und wird mit fwrite()
gefüttert,
wenn die zlib meint, daß wieder genug Daten zum Rausschreiben da seien.

Wärend die Messung läuft, möchte ich nur mal eben in diese Datei
reinschauen. Dazu "mißbrauche" ich eine Auswerteprogramm, das eben diese
Meßdateien einlesen und auswerten kann. In diesem Programm öffne ich die
Datei mit fopen("dateiname", "r");.

Wende ich nun dieses Auswerteprogramm auf eine Datei an, bei der die Messung
noch läuft, also wo die Datei noch wächst, passiert es mir des öfteren,
daß
anschl. die Datei bei der Größe wo sie gerade angekommen war, einen Fehler
enthält. Das Meßprogramm schreibt aber noch brav weiter (keine
Fehlermeldung beim fwrite() ). D.h. die Datei wächst noch weiter, ich komme
aber wegen einer Fehlermeldung der zlib nicht mehr an die Daten dahinter
ran.

Ein anderer Vesuch war, die noch wachsende Datei einfach mittel cp-Kommando
zuvor zu kopieren und anschl. das Auswerteprogramm auf die Kopie
anzuwenden. Aber auch da ist es mir passiert, daß anschl. die Originaldatei
kaputt war.

Was geht da schief? Gibt es eine andere Möglichkeit in die noch zum
Schreiben geöffnete Datei "zu schauen", ohne sie (wie und warum auch immer)
dabei kaputt zu machen?

Jürgen

[ Auf dieses Posting antworten ]

Antworten