Timer vs. Thread

Gast #2613805
Lesenswert?
• ▲
▼
Hallo Leute,

bin gerade am Programmieren eines Programmes, welche folgende 
Funktionalität haben soll.

Ich habe ein Array mit 20 x 20 Werten. Der User muss 4 Punkte eingeben 
die 2 Geraden bilden (zB A(0,0), B(5,20), C(5,0), D(20,5)). Jeder Punkt 
der oberhalb er Geraden AB und und unterhalb der Geraden CD ist, kann 
vernachlässigt werden.

Soweit so gut.

Wenn ich nun zu einem Punkt komme der Valid ist, will ich eine 30 
sekündige Messung durchführen. Dann den Mittelwert des Messwertes bilden 
und speichern.
______________________________________________________________________ 
_

Am Anfang dachte ich mir, ich löse es mit 2 for schleifen. Wenn mein 
Punkt valid ist, führe ich ein TickEvent aus, indem jede Sekunde der 
Messwert gemessen wird.

Funktioniert leider nicht, da das TickEvent anscheinend in einer 
MessageLoop gespeichert wird und erst nach ablauf der beiden for 
schleifen ausgeführt wird.
______________________________________________________________________ 
__

Als nächstes habe ich es mit einer selbstgebauten StateMachine versucht.

case 0:
Punkt valid?
wenn ja
goto case2
sonst goto case1

case1:
...

case2:
Timer1 timer= new Timer();
timer.Interval = 1000;
timer.Start();
timer.Tick += newEventHandler(timer_tick);

wenn aktuelleAnzahlMesspunkte < 400
goto case0
sonst
default;

Funktioniert zwar besser, jedoch wird das TickEvent nur alle 1000ms 
aufgerufen.

Es ist zwar dass was ich programmiert habe, jedoch will ich ja, dass er 
anhält im case2 und 30 Sekunden lang misst, indem er jede Sekunde das 
TickEvent aufruft.


Hat jemand eine Idee das zu realisieren bzw. eine Anregung was bei mir 
falsch ist.??

thx im Vorraus

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren