LabVIEWForum.de - XControl - CPU Belastung

LabVIEWForum.de

Normale Version: XControl - CPU Belastung
Du siehst gerade eine vereinfachte Darstellung unserer Inhalte. Normale Ansicht mit richtiger Formatierung.
Hallo,

habe seit kurzem ein Problem mit den XControls festgestellt.

Wenn ich ein VI mit einem eingebautem XControl öffne erhöht sich die CPU Belastung um ca. 20% ohne das das VI läuft. Es befindet sich im Bearbeitungsmodus.
Dieses Verhalten ist mir bei einigen XControls aufgefallen und bei anderen bleibt die Belastung bei 0%.

Kennt jemand das Verhalten oder gibt es eine Lösung dafür?

Vieln Dank
olum
Du musst uns entweder das XControl zur Verfügung stellen oder selber im Xcontrol nach dem Fehler suchen. Mach dazu Facade.vi auf und guck rein. Du kannst auch während der Ausführung über Rechtsklick-Fortgeschritten-Diagramm in das Blockdiagramm von Facade.vi wechseln. Wenn die die Fehlerbehandlung aktiviert ist können auch Sonden gesetzt und der Highlightmodus genutzt werden.
Hierbei ist vor allem wichtig, eine grundlegende Eigenschaft von XControls zu verstehen:
Der Code des XControls wird auch dann ausgeführt, wenn das VI nicht läuft.

Klingt komisch, is aber so ;-)


Etwas konkreter: Das Facade VI ist ein Event-Handler, der auf etliche LabVIEW-Events reagieren kann. Das können nun auch Events sein, die es normalerweise nicht zur Laufzeit gibt, die aber in der Entwicklungsumgebung auftreten (z.B. das Ändern eines Controls in einen Indicator).

Mit etwas "Geschick" kann man damit LabVIEW auch ganz toll völlig blockieren, so dass man da nur noch mit Abschießen der labview.exe wieder rauskommt ;-)

Das ist übrigens kein grundsätzlicher Fehler, man muss sich nur bewusst machen, dass das Erstellen von XControls zu den sehr fortgeschrittenen Features gehört, die sehr tief in LabVIEW eingreifen.
Danke für eure Antworten.

Bin jetzt selber auf die Quelle des Problems gestoßen.
In dem XControl habe ich auf eine Umgebungsvariable lesend zugegriffen. Sobald ich den Teil desaktiviert habe, war die CPU Belastung weg.
Das Schreiben von Umgebungsvariablen macht allerdings keine Probleme.

Edit: Das Verhalten tritt nur auf wenn sich die Variable auf einem anderem System befindet. (Netzwerk)

Verdacht Gerade umgekehrt als es meistens der Fall ist.Smile

Sollte man dies NI melden?

Grüße
olum
Ich vermute, Du meinst Network Shared Variables?
Da erscheint es mir sogar halbwegs logisch, dass Lesen aufwändiger sein könnte als Schreiben.
An NI melden halte ich für wenig zielführend.

Die entscheidende Frage ist wohl eher:
Wieso muss das XCTL dauernd mit den Variablen hantieren, obwohl das VI nichtmal im Run Mode ist?

Klingt aber so, also wenn Du dieses konzeptionelle Problem nun ausgeräumt hättest.
Referenz-URLs