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 

Dieses Thema hat akzeptierte Lösungen:

Absturz beim Aufruf eines SubVIs



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!

04.06.2013, 14:07
Beitrag #11

Achim Offline
*****
*****


Beiträge: 4.223
Registriert seit: Nov 2005

20xx
2000
EN

978xx
Deutschland
RE: Absturz beim Aufruf eines SubVIs
(28.05.2013 13:49 )TSchAC schrieb:  Vielleicht sollte ich mal alles kompilieren und schauen was in der Runtime so passiert. bisher läuft alles noch in der Entwicklungsumgebung.

Ach man, bis zu dem Fehler war alles soooo schön!

Und? Gelöst?

"Is there some mightier sage, of whom we have yet to learn?"

"Opportunity is missed by most people because it is dressed in overalls and looks like work." (Thomas Edison)
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
Anzeige
05.06.2013, 12:02
Beitrag #12

TSC Offline
LVF-Team
LVF-Team

Beiträge: 1.882
Registriert seit: Sep 2008

LV 2018 SP1
2008
EN

52379
Deutschland
RE: Absturz beim Aufruf eines SubVIs
Leider noch nicht gelöst! Habe mal alle zeitgesteuerten Schleifen durch Whileschleifen mit manuellem Timing ersetzt. Dabei bleibt der Absturz an der selben Stelle und zusätzlich läuft der Arbeitsspeicher voll. Also hab ich alles wieder auf die vorherige Version zurück gestellt. Dann habe ich versucht den Speicher von Hand wieder freizugeben. Dafür habe ich das VI Speicherfreigabe anfordern überall dort eingebaut, wo SubVIs regelmäßig ausgeführt werden. Das hat gar nix geändert. Als nächstes werde ich alle Umgebungsvariablen durch FGVs ersetzen.

Leider hänge ich parallel noch an einem Modbus-Problem. Deswegen schiebe ich diese Baustelle ein wenig vor mir her. Vielleicht löst sich das Problem wenn ich nächste Woche eine neue LabVIEW Version installiere.

Ich melde mich, wenn es weiter geht!

"Über Fragen, die ich nicht beantworten kann, zerbreche ich mir nicht den Kopf!" (Konrad Zuse)
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
05.06.2013, 18:37 (Dieser Beitrag wurde zuletzt bearbeitet: 05.06.2013 18:38 von Holy.)
Beitrag #13

Holy Offline
LVF-Stammgast
***


Beiträge: 339
Registriert seit: Sep 2008

2014
2007
EN

09XXX
Deutschland
RE: Absturz beim Aufruf eines SubVIs
Mit "Speicher freigeben" denke ich nicht das du Volllaufen von Arbeitsspeicher lösen kann. Mir ist jedenfalls noch kein Fall untergekommen. Vielleicht mal noch eine Idee um der Ursache auf den Grund zu kommen. Wie wäre es besagte Funktion mit einem Logging zu versehen welche die einzelnen Schritte sinnvoll mitloggt. Zum Beispiel nach folgendem Muster:
  1. Beginn Aufruf VI (direkt bevor das fragliche VI gerufen wird)
  2. Ende Aufruf VI
  3. Subfunktion 1
  4. Subfunktion 2
  5. ...
  6. Subfunktion n
  7. Ende VI

Das Logging könnte z.B. eine FGV sein welche an eine Datei direkt einen Eintrag anhängt und jedesmal die Datei öffnet und schließt damit auch sichergestellt ist das du definitiv alle Logeinträge siehst.
Ergebnis wäre du würdest genau sehen können wo er wirklich hängt. Bevor du noch weiter im Nebel rumstocherst und sonstwas probierst könntest so den Übeltäter dingfest machen.
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
06.06.2013, 07:59
Beitrag #14

Tobias.Raeuchle Offline
LVF-Neueinsteiger


Beiträge: 3
Registriert seit: Sep 2005

8.6 - 2012
2000
DE_EN

75038
Deutschland
RE: Absturz beim Aufruf eines SubVIs
Hallo, wir hatten auch mal so ein Problem das wir nicht gefunden hatten.
Bei uns waren es Reihenweise nicht geschlossene Referenzen...seit wir diese schön nach Gebrauch zu machen läufts wunderbar.

Gruß
Tobias
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
06.06.2013, 10:07
Beitrag #15

TSC Offline
LVF-Team
LVF-Team

Beiträge: 1.882
Registriert seit: Sep 2008

LV 2018 SP1
2008
EN

52379
Deutschland
RE: Absturz beim Aufruf eines SubVIs
Alle Referenzen werden brav geschlossen (so oft und ausführlich wie in diesem Projekt habe ich das noch nie vorher kontrolliert!).

Das Debuggen fällt recht schwer, da das Programm wie gesagt durchläuft. Nur ein Unterprogramm nicht. Wenn ich mir nur das Unterprogramm ansehe, dann hängt es immer an der selben Stelle. Das aktive SubVI wird im Main aufgerufen, aber im SubVI startet nichts!
Da komme ich auch mit einem ActionLogger nicht weiter.

Sad

"Über Fragen, die ich nicht beantworten kann, zerbreche ich mir nicht den Kopf!" (Konrad Zuse)
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
06.06.2013, 10:25
Beitrag #16

macmarvin Offline
CLA
***


Beiträge: 445
Registriert seit: Sep 2006

2014
2004
EN

81373
Deutschland
RE: Absturz beim Aufruf eines SubVIs
(05.06.2013 12:02 )TSchAC schrieb:  ... Dabei bleibt der Absturz an der selben Stelle und zusätzlich läuft der Arbeitsspeicher voll. Also hab ich alles wieder auf die vorherige Version zurück gestellt. Dann habe ich versucht den Speicher von Hand wieder freizugeben. Dafür habe ich das VI Speicherfreigabe anfordern überall dort eingebaut, wo SubVIs regelmäßig ausgeführt werden. ...

Zeigt denn der "Profile Performance and Memory..." verdächtige VIs an die viel Speicher brauchen oder geht nur der Speicherverbrauch der Applikation insgesamt nach oben? Das Speicherfreigabe anfordern wird dir afaik nur was bringen, wenn es "VI-Speicher" ist (und da bringt das nur _ganz_ selten etwas).
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
Anzeige
06.06.2013, 10:38
Beitrag #17

TSC Offline
LVF-Team
LVF-Team

Beiträge: 1.882
Registriert seit: Sep 2008

LV 2018 SP1
2008
EN

52379
Deutschland
RE: Absturz beim Aufruf eines SubVIs

Akzeptierte Lösung

Hier die Lösung:

1. VI bei dem der Geisterabbruch auftritt öffnen
2. Alles kopieren
3. VI schließen und von der Festplatte löschen
4. Neues VI und Strg+V
5. Neues VI unter altem Namen speichern

Alles läuft, dank der vielen Speicherfreigaben habe ich jetzt keinen konstanten Speicher mehr. Er fällt regelmäßig um ca. 1MB und steigt dann kontinuierlich wieder an. Dann fällt er wieder. Also im Mittel über die Zeit dann doch wieder konstant. Ich denke ich nehme die Speicherfreigaben wieder raus. Und dann mal sehen, ob ich timed Loops nehme oder nicht. Wenn sie keine Probleme machen, finde ich sie ziemlich geil. Habe mir einen kleinen Loopadmin programmiert. Da registriert sich jede Loop wenn sie gestartet wird. Im Admin kann ich mir dann alles mögliche ansehen. Verspätete Beendigung, letzte Ausführung und Ausführungssdauer, ich kann einzelne Loops manuell beenden.

Naja, was ich jetzt da oben gezaubert habe? Keine Ahnung! Aber es geht und ich schiebe es einfach mal auf einen Bug im LabVIEW-Inneren! Danke an alle die mir geholfen haben! Habe dann auch tatsächlich wieder bissl was gelernt und kann jetzt nooooch besser debuggen als vorher. Wink

Auf gehts zur nächsten Baustelle!
Grüße,
Totti

"Über Fragen, die ich nicht beantworten kann, zerbreche ich mir nicht den Kopf!" (Konrad Zuse)
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
07.06.2013, 07:23
Beitrag #18

Achim Offline
*****
*****


Beiträge: 4.223
Registriert seit: Nov 2005

20xx
2000
EN

978xx
Deutschland
RE: Absturz beim Aufruf eines SubVIs
(06.06.2013 10:38 )TSchAC schrieb:  Und dann mal sehen, ob ich timed Loops nehme oder nicht. Wenn sie keine Probleme machen, finde ich sie ziemlich geil. Habe mir einen kleinen Loopadmin programmiert. Da registriert sich jede Loop wenn sie gestartet wird. Im Admin kann ich mir dann alles mögliche ansehen. Verspätete Beendigung, letzte Ausführung und Ausführungssdauer, ich kann einzelne Loops manuell beenden.

Kleine Ergänzung, weil das gestern beim Anwendertreffen ein Thema war. Ich habe die Timed Loop auch ein bisschen missverstanden als "Beschleuniger" für gewisse Aufgaben...was aber so nicht stimmt...siehe hier:
http://digital.ni.com/public.nsf/allkb/F...9C001EB323


Außerdem war ne generelle Aussage: Nicht mehr Timed Loops in einer Applikation als man "Cores" hat...sonst müssen sich zwei oder mehr "zeitkritische" Loops evtl. einen Core teilen...

Gruß
Achim

"Is there some mightier sage, of whom we have yet to learn?"

"Opportunity is missed by most people because it is dressed in overalls and looks like work." (Thomas Edison)
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
07.06.2013, 08:36
Beitrag #19

TSC Offline
LVF-Team
LVF-Team

Beiträge: 1.882
Registriert seit: Sep 2008

LV 2018 SP1
2008
EN

52379
Deutschland
RE: Absturz beim Aufruf eines SubVIs
Guter Artikel, nützliche Infos! ABER:
meine Projekte sind alles andere als zeitkritisch. Ich arbeite nicht im Millisekundentakt sondern meist im Sekundentakt manchmal sogar im Minutentakt. Die Ausführungsdauer eines Loops beträgt meist unter 10 ms. Da spielt es keine große Rolle, ob ein Kern mal grade belegt ist und ich ein paar ms warten muss, bis die Loop dann ran darf. Was Timed-Loops beschleunigen, ist der Programmieraufwand wenn man eben mehr will als nur eine Schleife die im Takt läuft. Und logisch, das kostet Zeit. Wie bei allen ExpressVIs: mit Vorsicht genießen, weil sie meist viel mächtiger sind, als man es eigentlich bräuchte.

Man muss also wirklich immer den Einzelfall betrachten denn es gibt Immer Ausnahmen und wenn man zumindest grob versteht, was man tut, bzw. was die TimedLoop tut, dann kann man auch mit den Negativen Aspekten Leben!

Wink Mein Programm läuft übrigens immer noch unglaublich stabil! Traue mich gar nicht, es zu unterbrechen und weitere Module einzubauen!

"Über Fragen, die ich nicht beantworten kann, zerbreche ich mir nicht den Kopf!" (Konrad Zuse)
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
30
Antwort schreiben 


Möglicherweise verwandte Themen...
Themen Verfasser Antworten Views Letzter Beitrag
  Absturz von Applikation wegen Fehler in lvrt.dll dereinzug 5 3.046 20.10.2023 11:06
Letzter Beitrag: Martin.Henz
  Asynchroner Aufruf eines VIs klappt nicht in der EXE Msengxxl 4 3.742 09.03.2021 16:09
Letzter Beitrag: Msengxxl
  Absturz von LabView 2016 MarcoN 9 5.227 21.07.2020 09:15
Letzter Beitrag: MicroScoop
  Mehrfacher Absturz von LabView 2010 Sade 3 3.502 24.09.2018 14:46
Letzter Beitrag: GerdW
  Absturz bei Öffnen eines sub VI oe-ms1 7 6.094 19.03.2018 06:58
Letzter Beitrag: oe-ms1
  Start-/Stopp-Funktion beim Aufrufen eines VIs lipster 3 5.347 17.01.2017 10:05
Letzter Beitrag: lipster

Gehe zu: