Hallo,
ich habe folgende Frage:
Momentan läuft in der Main ein Timer (alle 5000ms). Innerhalb des Timers wird ein Serialport zu einer Arduino Platine geöffnet und ich frage eine ganze menge ab und empfange auch ganz viel (Write und Read bestimmt 20 mal hintereinander, Serialport wird wieder geschlossen und nach 5 Sek. beginnt wieder alles von vorne). Das klappt fast problemlos möchte man meinen (bricht leider alle paar Tage ab) Das Programm läuft 24/7 auf einem Windows 7 Rechner.
Die Ausführung des Timers bringt die GUI alle 5 Sekunden für ca. 3 Sekunden zum stehen.
Jetzt habe ich mir gedacht, nimm alles was im Timer passiert aus der Main raus und lass es in einem Background Thread laufen. Danach übergib nur die neuen Werte an die Main, damit diese dann z.B. in einem Label dargestellt werden können.
Dieses Übergeben der Werte vom Thread zurück an die Main ist mir unklar. - Also ich weiß gar nicht wie das gehen soll. Har hier Jemand vielleicht eine Idee?
ich habe folgende Frage:
Momentan läuft in der Main ein Timer (alle 5000ms). Innerhalb des Timers wird ein Serialport zu einer Arduino Platine geöffnet und ich frage eine ganze menge ab und empfange auch ganz viel (Write und Read bestimmt 20 mal hintereinander, Serialport wird wieder geschlossen und nach 5 Sek. beginnt wieder alles von vorne). Das klappt fast problemlos möchte man meinen (bricht leider alle paar Tage ab) Das Programm läuft 24/7 auf einem Windows 7 Rechner.
Die Ausführung des Timers bringt die GUI alle 5 Sekunden für ca. 3 Sekunden zum stehen.
Jetzt habe ich mir gedacht, nimm alles was im Timer passiert aus der Main raus und lass es in einem Background Thread laufen. Danach übergib nur die neuen Werte an die Main, damit diese dann z.B. in einem Label dargestellt werden können.
Dieses Übergeben der Werte vom Thread zurück an die Main ist mir unklar. - Also ich weiß gar nicht wie das gehen soll. Har hier Jemand vielleicht eine Idee?