LabVIEWForum.de
Muss man Referenzen schließen? - Druckversion

+- LabVIEWForum.de (https://www.labviewforum.de)
+-- Forum: LabVIEW (/Forum-LabVIEW)
+--- Forum: LabVIEW Allgemein (/Forum-LabVIEW-Allgemein)
+--- Thema: Muss man Referenzen schließen? (/Thread-Muss-man-Referenzen-schliessen)

Seiten: 1 2 3


RE: Muss man Referenzen schließen? - GT123 - 02.02.2012 09:45

Hi, achja das habe ich übersehen mit der VI Ref., ist die Lösung wie geändert nun i.O.?
Was ist den wenn ich aus einem anderen SubVI ebenfalls eine Ref zu diesem test.vi öffnen will, ist diese dann auch gelöscht? Ich vermute das es so ist, dass wenn ich in dem SubVi jeweils eine eigene test.vi Ref. öffne das diese Ref unabhängig / verschieden ist zu den Ref. der anderen SubVis.

Und zur For-Schleife: Wie soll ich dies dann lösen, siehe Lösung im VI....
Besten Dank


RE: Muss man Referenzen schließen? - Falk - 02.02.2012 10:02

(02.02.2012 09:45 )GT123 schrieb:  Hi, achja das habe ich übersehen mit der VI Ref., ist die Lösung wie geändert nun i.O.?
Was ist den wenn ich aus einem anderen SubVI ebenfalls eine Ref zu diesem test.vi öffnen will, ist diese dann auch gelöscht? Ich vermute das es so ist, dass wenn ich in dem SubVi jeweils eine eigene test.vi Ref. öffne das diese Ref unabhängig / verschieden ist zu den Ref. der anderen SubVis.

Und zur For-Schleife: Wie soll ich dies dann lösen, siehe Lösung im VI....
Besten Dank

An deiner Stelle würde ich mir absolut keine Gedanken über dein 2. Beispiel machen, sprich ich würde mich um das Schließen der statischen Control-Referenzen innerhalb des selben VIs gar nicht kümmern. Übrigens vergleiche mal die jeweiligen "XY Graph"-Referenzen und du wirst feststellen, dass diese immer gleich sind.
Anders verhält es sich aber in deinem 1. Beispiel. Mein vorhergehender Kommentar mit der For-Schleife bezog sich nämlich genau auf dieses Beispiel.

Schöne Grüße
Falk


RE: Muss man Referenzen schließen? - GT123 - 02.02.2012 11:05

Wie muss ich dies dann richtig programmieren mit der For-Schleife?
Ein Beispiel wäre super (am besten mit meinem VI). Danke


RE: Muss man Referenzen schließen? - Falk - 02.02.2012 12:00

Ich wollte hier jetzt keine Verwirrung stiften. Aber um das nochmals zu verdeutlichen angehängt ein Beispiel. Ist nicht das Beste aber zeigt die Problematik mit der For-Schleife.

Schöne Grüße
Falk


RE: Muss man Referenzen schließen? - GT123 - 03.02.2012 10:01

Hallo,
hmmm habe gestern bereits diese Antwort geschrieben ist aber irgendwie nicht im Forum...
Also Verwirrung überhaupt nicht sondern Klarheit. Denn ich hatte mal genau dieses Problem beim Schliessen einer Ref. nach einer For-Schleife, das war genau der Grund. Super.
Da ich immer noch beim Verlassen eines Subvis eine Message bekomme (resetting VI: ....vi) und evtl. vermute das es von den restlichen öffenen Ref. sein könnte, bitte ich Dich/Euch noch um Beantwortung der Unklarheiten siehe im Vi im Anhang. Ich habe zu beiden Beispielen noch Fragen.
Dieses SubVi welches dieses Reset Problem hat wird anscheinend ordentlich beendet sonst würde der Programmablauf im main.vi nicht weitergehen. Für micht stellt sich die Frage an was es liegt. Auf dem Frontpanel dieses Subvis befinden sich xyGraphen mit sehr vielen Punkten, kann es daher kommen?
Nach sehr langer Wartezeit ist die Meldung resetting doch noch erloschen, und LV konnte normal weiterverwendet werden. Die Meldung kommt aber nur nach längerer Nutzung... irgendwas überläuft o. so????


RE: Muss man Referenzen schließen? - Falk - 03.02.2012 10:47

Moin moin!

Also langsam solltest du etwas genauer erklären was überhaupt genau gemacht werden soll, sprich was ist die Funktion dahinter. Schaue ich mir das von dir angehängte VI an verstehe ich nur Bahnhof. Beispielsweise was soll die For-Schleife in der While-Schleife machen? Und warum außerhalb der While-Schleife noch einmal die selbe Funktionalität in einer Schleife? Sollte das beispiel nur akademischer Natur sein okay, aber dann wird es schwer dir bei deiner konkreten Fragestellung zu helfen. Beispielsweise wie groß wird der Speicherverbrauch des Shift-Registers, sprich wieviele Array-Elemente stecken typischerweise drin oder ist das nach oben offen?
Ansonsten habe ich dein VI mal etwas modifiziert.

Schöne Grüße
Falk


RE: Muss man Referenzen schließen? - GT123 - 03.02.2012 14:09

Hallo,
Zitat:Sollte das beispiel nur akademischer Natur sein okay
ja so ist es, nur ein Bsp.
Ich habe nun mal ein Auszug meiner grösseren Applikation gemacht ich hoffe es ist ersichtlich was dort passiert.

Zitat:wie groß wird der Speicherverbrauch des Shift-Registers, sprich wieviele Array-Elemente stecken typischerweise drin oder ist das nach oben offen?
Hier können es viele Messwerte sein ... etwa bis zu ca. 100 000 o. mehr

Danke für die Modifikation. Wie sieht es im Beispiel 2 aus, wei soll ich es dort schliessen?


RE: Muss man Referenzen schließen? - GT123 - 07.02.2012 06:16

Zitat:Wie sieht es im Beispiel 2 aus, wei soll ich es dort schliessen?
Kann mir hierzu jemand noch einen Ratschlage geben?

Und zu der Meldung resetting vi meiner Applikation... ich noch nicht fündig geworden
woher es kommt u. wie es dann auch beheben kann. Evtl. sieht ja jemand von Euch
die Problematik in den Vi's.
Vielen Dank


RE: Muss man Referenzen schließen? - GT123 - 09.02.2012 06:45

Hallo,
habe vermutlich den Grund gefunden der fürs "resetting Vi" verantwortlich ist.
Und zwar musste ein Vi beim freigeben der Queues recht lange schaffen.
Und zwar deswegen weil die obtain Queues unheimlich viele Referenzen angelegt hatten.
Ich habe nach obtain Queues nicht die Referenz wieder freigegeben u. dies wurde extrem oft
aufgerufen. Und beim freigeben der Queues mit der Option Force Destroy = T mussten eben
alle Ref. zerstört werden (gute 5-6min :-)

Wenn mir sonst noch einer ein Tipp zu meinem hochgeladenen Auszug der Applikation gibt, bin
ich natürlich immer froh.

Kann mir jemand zum Thema Referenz schliessen zum Beispiel 2 noch einen Ratschlag geben?