' schrieb:Hallo Nukolar,
da kannst du ne Lokalevariable benutzen. Oder per Eigenschaftsknoten in die Eigenschaft "Wert" schreiben.
im Blockdiagramm rechtsklick auf deine Eingabevariable im Menue dann den Punkt "Erstellen" da findest du beoides drin.
Die Lokale Variable oder die Eigenschaft kannst du dann wieder mit nem rechtsklick und im Menue von Lesendzu schreibend und umgekehrt machen.
Grüße
Achimedes
Solange es um User Interaktion geht ist das zwar nicht wichtig aber wenn Du den Wert in einer Loop schnell updaten willst dann ist die lokale Variable der "Wert" Property Node ganz deutlich vorzuziehen.
Eine Property Node wird immer im UI Thread ausgeführt und ist synchron. D.h. der Code (Deine Loop zum Beispiel) muss einen Threadcontextswitch machen, den Wert updaten, das UI wird soweit nötig neu gezeichnet und danach ein Threadcontextswitch zurück in Deinem Code.
Bei einem Terminal oder lokalen Variablen Schreibzugriff, wird der Wert ganz einfach in eine ein Element Queue für das FP ELement gepostet und der Code kann weitermachen. Irgendwann kommt der UI Thread an die Reihe, sieht dass Updates für ein (oder auch mehrere) Controls nötig sind und kann das alles in einem Rutsch abarbeiten. Der UI Thread wird ungefähr 30 bis 50 mal pro Sekunde angestossen wenn die CPU nicht zuviel mit anderen Dingen beschäftigt ist.
Und wer jetzt sagt, aber dann verliere ich ja Updates im User Interface (die Loop generiert zum Beispiele 10000 Werte pro Sekunde aber nur 30 - 50 werden wirklich dargestellt) der muss mir mal erzählen wie er in einem Film die verschiedenen stehenden Bilder (25 - 30 pro Sekunde) voneinander unterscheidet
Der Vorteil davon ist halt eben, dass die Loop überhaupt 10000 Werte pro Sekunde generieren kann. Bei einem Property Update wird die Loop auf nie mehr als 100 Iterationen kommen selbst auf einer 500 Core Maschine, da das Neuzeichnen auf dem Schirm eine sehr zeitaufwendige Operation ist, selbst wenn es nur um ein einfaches numerisches Element geht.
Rolf Kalbermatter