Frage

Ich habe einen Dienst, der eine RS-232-Gerät und Protokolle Aktionen in eine Datei steuert. Ich bin einen anderen Dienst zu schreiben, die die Protokolldatei Zeile für Zeile lesen und einige Abfragen auf einer Datenbank ausführen dann alle Protokolle löschen.

Meine Sorge ist, über Lesen und Schreiben von Konflikten auf die Datei. Öffnen Sie zum Beispiel der Logger-Dienst die Datei eine neue Zeile zur gleichen Zeit öffnet der Replikator-Dienst die Datei anhängen und schreiben „“ so dass ihr Inhalt gestutzt.

Irgendwelche Vorschläge, meine Situation zu klären?

War es hilfreich?

Lösung

Wie wäre es das „Lesen“ Service Modifizieren der Datei zuerst umbenennen (a „_“ davor setzen ist, was ich in der Regel tun). Und dann kann es löschen, wenn Sie fertig. Der Schreibdienst sollte die Protokolldatei erstellen, wenn es nicht existiert. Auf diese Weise sollten Sie ohne Datenverlust haben.

Andere Tipps

Wenn Ihr nicht gebunden sind, eine Datei zu verwenden, wäre die Verwendung Fall eine Nachrichtenwarteschlange für Gabe vorschlagen über Logdaten.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top