Zugriff auf selbe Datein auf Netzlaufwerk

Alles rund um die Programmierung mit Qt
Antworten
freakonaleash99
Beiträge: 43
Registriert: 23. Juli 2017 12:35

Zugriff auf selbe Datein auf Netzlaufwerk

Beitrag von freakonaleash99 »

Hallo.
Ich habe eine Qt Anwendung programmiert, welche zukünftig auf mehrere Rechnern (ca.5-10) laufen soll. Von jeder geöffneten Anwendung wird auf Daten zugegriffen, welche im selben Ordner auf einem Netzlaufwerk liegen. Mit QFileSystemWatcher wird dieser Ordner überwacht. Sobald eine Datei gelöscht oder hinzukommt, werden in der bzw. den Anwendungen die Inhalte aller im Ordner befindlichen Dateien (ca. 10 Dateien mit je 10kb) neu in die Anwendung geladen.
Die Dateien können mittels GUI in jeder Anwendung verändert werden. Wird die Änderung gespeichert (manuell per button), so wird die bearbeitete Datei in dem Ordner gelöscht und neu erstellt. Letzteres habe ich so umgesetzt, damit der QFileSystemWatcher ein Signal sendet. Würde man nur die Datei ändern, bliebe das Signal aus. Beim Abspeichern aus einer Anwendung werden also auch in allen anderen Anwendungen die Daten neu geladen.

Prinzipiell funktioniert das sehr gut. Ich habe nun die Frage, ob jemand beurteilen kann, was im worst case passieren kann, wenn man zufällig an zwei oder mehreren PCs zur gleichen Zeit eine Datei abspeichert ("löschen > neu anlegen").

Das Ereignis ist sehr unwahrscheinlich. Trotzdem möchte ich wissen, ob es zu einem so kritischen Konflikt kommen kann, dass die Anwendungen abstürzen kann?Löschen und erstellen der Datei mache ich ausschließlich mit Funktionen aus Qt: QFile::open(QIO::WriteOnly) und QDir::remove

Mir ist klar, dass einzelne Änderungen der Dateien verloren gehen können, aber das ist jetzt erstmal nicht relevant.

Können die Anwendungen abstürzen? Ich habe versucht das Verhalten zu simulieren, aber da der Prozess in wenigen ms abläuft, bin ich mit natürlich nicht sicher, ob ich den exakt gleichen Zeitpunkt treffe.

Danke im voraus!
Antworten