Hallo,
ich habe in einem Projekt die folgende Timerprogrammierung gefunden:
1 | if (MicroSecTimer() - ui32Time) > WERT_IN_US)
|
2 | {
|
3 | //Do Something
|
4 | }
|
5 | else
|
6 | {
|
7 | //Do something else
|
8 | }
|
Die variable "ui32Time" wird an einer Stelle mit "ui32Time =
MicroSecTimer()" vorbelegt.
Bei einem Überlauf des Microsekunden Zählers wird doch für die Zeit
WERT_IN_US die Bedingung false. Zugegeben dauert es bei 32 Bit über 70
Minuten, aber wie programmiert man so ein Konstukt richtig. Ich habe es
schon öfters gesehen. Es ist mir aber immer suspekt geblieben.
Wenngleich es sehr elegant anmutet :-)
Hannes