LabVIEWForum.de
Speichern: TDMS-Ref offen halten vs. neu erstellen - Druckversion

+- LabVIEWForum.de (https://www.labviewforum.de)
+-- Forum: LabVIEW (/Forum-LabVIEW)
+--- Forum: LabVIEW Allgemein (/Forum-LabVIEW-Allgemein)
+---- Forum: Datenbank & File IO (/Forum-Datenbank-File-IO)
+---- Thema: Speichern: TDMS-Ref offen halten vs. neu erstellen (/Thread-Speichern-TDMS-Ref-offen-halten-vs-neu-erstellen)



Speichern: TDMS-Ref offen halten vs. neu erstellen - Wedgewood - 03.07.2015 00:36

Guten Abend,

zu später und daher kühlerer Stunde habe ich eine Frage:

Was spricht dafür, beim regelmäßigen Speichern die Referenz auf die TDMS-Datei zu behalten, also die Datei geöffnet zu lassen
und was dafür, die Datei bei jedem Schreibvorgang neu zu öffnen und so eine neue Referenz zu erstellen?

Hintergrund der Frage: In einem Programm werden im Sekundentakt Signale in eine oder mehrere Dateien geschrieben.
Die Anzahl der Dateien hängt von der Anzahl der Datenquellen ab.

In dem einen Fall muss ich n Referenzen verwalten, aber es gibt sicher irgendwelche Vorteile. Zumindest habe ich mal die
Empfehlung gelesen, dass lieber so zu machen.
In dem anderen Fall öffne ich die Datei, schreibe die Daten du schließe die Datei wieder. Erscheint mir erstmal einfacher.
Ein gleichzeitiger Zugriff durch ein anderes Programm ist ausgeschlossen, dieser Aspekt ist also irrelevant.

Also meine Frage: Wie würdet Ihr es lösen und vor allem warum?

Liebe Grüße

Wedgewood


RE: Speichern: TDMS-Ref offen halten vs. neu erstellen - jg - 03.07.2015 07:48

(03.07.2015 00:36 )Wedgewood schrieb:  Was spricht dafür, beim regelmäßigen Speichern die Referenz auf die TDMS-Datei zu behalten, also die Datei geöffnet zu lassen
Nichts, ist sogar "Best Practice"
(03.07.2015 00:36 )Wedgewood schrieb:  und was dafür, die Datei bei jedem Schreibvorgang neu zu öffnen und so eine neue Referenz zu erstellen?
Eigentlich nichts, da es mit Öffnen und Schließen länger dauert. Der TDMS und der Index File werden bei diesem Vorgehen größer ausfallen.
(03.07.2015 00:36 )Wedgewood schrieb:  Hintergrund der Frage: In einem Programm werden im Sekundentakt Signale in eine oder mehrere Dateien geschrieben.
Die Anzahl der Dateien hängt von der Anzahl der Datenquellen ab.

In dem einen Fall muss ich n Referenzen verwalten, aber es gibt sicher irgendwelche Vorteile. Zumindest habe ich mal die
Empfehlung gelesen, dass lieber so zu machen.
In dem anderen Fall öffne ich die Datei, schreibe die Daten du schließe die Datei wieder. Erscheint mir erstmal einfacher.
Ein gleichzeitiger Zugriff durch ein anderes Programm ist ausgeschlossen, dieser Aspekt ist also irrelevant.
Bei TDMS ist ein gleichzeitiger lesender Zugriff möglich und stellt kein Problem dar.

Gruß, Jens


RE: Speichern: TDMS-Ref offen halten vs. neu erstellen - Wedgewood - 03.07.2015 10:46

Moin jg,

vielen Dank für die schnelle und ausführliche Antwort.
Dann werde ich der "Best Practice" mal folgen und einfach ein Array der Referenzen nutzen.

Das ist dann für mich ein weiterer Grund, den "Express-VIs" zu misstrauen.
Das Biomedical Toolkit Express-VI zum schreiben verwendet nämlich den Dateipfad.
Nach meinem Ermessen wird dort dann auch jedes Mal geöffnet, geschrieben und geschlossen werden.
Darum hatte ich ja eigentlich die Idee...

Aber dann mache ich es so, wie ich es vom Gefühl her auch richtiger gefunden hätte.

Vielen Dank und ein schattiges Plätzchen

Wedgewood