INFO: Dieses Forum nutzt Cookies...
Cookies sind für den Betrieb des Forums unverzichtbar. Mit der Nutzung des Forums erklärst Du dich damit einverstanden, dass wir Cookies verwenden.

Es wird in jedem Fall ein Cookie gesetzt um diesen Hinweis nicht mehr zu erhalten. Desweiteren setzen wir Google Adsense und Google Analytics ein.


Antwort schreiben 

Große Datenmenge aus SubVI holen



Wenn dein Problem oder deine Frage geklärt worden ist, markiere den Beitrag als "Lösung",
indem du auf den "Lösung" Button rechts unter dem entsprechenden Beitrag klickst. Vielen Dank!

28.01.2010, 17:23
Beitrag #1

Svenni Offline
LVF-Gelegenheitsschreiber
**


Beiträge: 227
Registriert seit: Mar 2005

7.1, 8.0, 8.2, 8.21, 8.5, 8.6, 2009, 2010, 2011, 2012, 2013, 2014
2000
DE

23843
Deutschland
Große Datenmenge aus SubVI holen
Hallo alle zusammen,

ich brüte gerade über einem Problem.
In meinem aktuellen Projekt bekomme ich einen großen String (ca. 180MB) aus einer dll.
Da das Auslesen der Daten mehrfach aufgerufen werden muss, habe ich ein SubVI erstellt. Dieses SubVI liegt wiederum in einem SubVI.
Wie bekomme ich jetzt die Daten am besten in das HauptVI.

Der Aufbau noch einmal genau:

- SubVI-A ruft eine dll auf. Die dll erzeugt einen String (ca. 180MB) und gibt diesen ans SubVI.
- SubVI-B ruf SubVI-A auf. In SubVI-B müssen nur ein paar Daten berechnet werden, die die dll braucht. Der String muss nur ans HauptVI durchgereicht werden.
- HauptVI ruft SubVI-B auf.

Mein erster Versuch sah so aus, dass ich die Daten in eine globale Variable schreibe und so SubVI-B garnicht mit den Daten in Berührung kommt.
Ganz optimal finde ich die Sache jedoch nicht.

Außerdem bekomme ich Probleme in meinem HauptVI. Ich muss aus dem String ein Array of Strings machen. Dazu nutze ich "Tabellen-String nach Array (Funktion)". Leider muss die Funtion neuen Speicher allokieren. Daraufhin wird es bald ein wenig eng mit dem Speicher und LabVIEW meldet häufig, dass der Speicher voll ist.

Ich bekomme es verflixt nicht hin, dass mein SubVI-A wieder aus dem Speicher verschwindet.

Wer kann mir einen Tipp geben?

Vielen Dank schon einmal!!!

Gruß
Sven
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
28.01.2010, 17:30
Beitrag #2

IchSelbst Offline
LVF-Guru
*****


Beiträge: 3.700
Registriert seit: Feb 2005

11, 14, 15, 17, 18
-
DE

97437
Deutschland
Große Datenmenge aus SubVI holen
Folgende Idee:

In LV2009 gibt es Datenwertreferenzen. Du könntest folgendes probieren. Im MainVI wird Speicher alloziert, der als Datenspeicher gilt. Dann wird für diesen Datenspeicher eine Datenwertreferenz erstellt. Diese Referenz wird an alle SubVIs durchgereicht. Somit sollte laut Theorie auch das SubVI mit der DLL in den Speicher, der im MainVI liegt, schreiben können.

Ich glaube, deine Aufgabe wäre ein guter Anlass, die Datenwertreferenzen mal auszuprobieren.

Jeder, der zur wahren Erkenntnis hindurchdringen will, muss den Berg Schwierigkeit alleine erklimmen (Helen Keller).
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
28.01.2010, 17:42
Beitrag #3

Svenni Offline
LVF-Gelegenheitsschreiber
**


Beiträge: 227
Registriert seit: Mar 2005

7.1, 8.0, 8.2, 8.21, 8.5, 8.6, 2009, 2010, 2011, 2012, 2013, 2014
2000
DE

23843
Deutschland
Große Datenmenge aus SubVI holen
Vielen Dank für die schnelle Antwort.

Werde mich morgen einmal damit beschäftigen.

Melde mich dann noch einmal, wie es läuft.


Gruß
Sven
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
28.01.2010, 19:28
Beitrag #4

IchSelbst Offline
LVF-Guru
*****


Beiträge: 3.700
Registriert seit: Feb 2005

11, 14, 15, 17, 18
-
DE

97437
Deutschland
Große Datenmenge aus SubVI holen
' schrieb:Melde mich dann noch einmal, wie es läuft.
Oh, ja, bitte! Auf jeden Fall, egal wie's ausgeht.

Das interessiert mich (und bestimmt andere auch) schon sehr. Ob es funktioniert, eine Datenwertreferenz irgendwo zu erstellen und überall zu verwenden.

Jeder, der zur wahren Erkenntnis hindurchdringen will, muss den Berg Schwierigkeit alleine erklimmen (Helen Keller).
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
29.01.2010, 11:56
Beitrag #5

Svenni Offline
LVF-Gelegenheitsschreiber
**


Beiträge: 227
Registriert seit: Mar 2005

7.1, 8.0, 8.2, 8.21, 8.5, 8.6, 2009, 2010, 2011, 2012, 2013, 2014
2000
DE

23843
Deutschland
Große Datenmenge aus SubVI holen
Hallo IchSelbst,

hat ein wenig gedauert, aber mir ist noch etwas anderes dazwischen gekommen.

Ich habe die Datenreferenzen eingebaut und es funktioniert. Auf jeden Fall habe ich jetzt weniger Speicherprobleme und die globalen Variablen kann ich entsorgen.Big Grin

Vielen Dank noch einmal.

Gruß
Sven
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
Antwort schreiben 


Möglicherweise verwandte Themen...
Themen Verfasser Antworten Views Letzter Beitrag
  Datum aus Excel holen Tobi Wan Kenobi 2 4.187 08.12.2015 11:35
Letzter Beitrag: Tobi Wan Kenobi
  Arry statischer Größe mit Elementen dynamischer Größe Si0815 2 3.664 08.03.2015 18:09
Letzter Beitrag: Si0815
  Transfer Datenmenge für GPIB zu groß Topia 5 4.600 09.09.2011 13:53
Letzter Beitrag: Topia
  SubVI Funktionen verwenden, ohne SubVI Frontpanel (AVT Kamera) Allyoucaneat 3 8.895 25.08.2011 15:18
Letzter Beitrag: GerdW
  Mit Labview PC aus dem Energiesparmodus/Hibernate holen MartinLoreck 8 6.747 12.08.2011 09:30
Letzter Beitrag: MartinLoreck
  Umgang mit großer Datenmenge / out of memory riske 11 11.494 11.11.2010 20:39
Letzter Beitrag: jg

Gehe zu: