C # Timer vs Thread in Service

Ich habe einen Dienst, der alle 10 Sek. Auf eine Datenbank zugreift und die Daten abruft, falls vorhanden. Die Verarbeitung dieser Daten kann jedoch bis zu 30 Sekunden dauern. Wenn ich einen Timer mit einem Intervall von 10 Sekunden verwende, erhält der Dienst zweimal dieselben Daten.

Der Effekt, den ich erreichen möchte (nur zur Visualisierung):

while(true)
{
    if(Getnrofrows() > 0)
      do stuff
    else
      sleep for 10 sec
}

Ppl Thread.Sleep zu sagen ist eine schlechte Idee bei Produktionsservices. Wie mache ich das mit Timern?

/Mik

Antworten auf die Frage(8)

Ihre Antwort auf die Frage