C # timer (verlangsamt eine Schleife)

7

Ich möchte eine Schleife verlangsamen, so dass sie alle 5 Sekunden wiederholt wird.

In ActionScript würde ich dafür einen Timer und ein Timer abschließen. Wie würde ich in C # darüber reden?

    
Chin 15.08.2010, 08:12
quelle

4 Antworten

14

Sie können diesen Aufruf in Ihre Schleife einfügen:

%Vor%

oder vorzuziehen für bessere Lesbarkeit:

%Vor%

Wenn Ihre Anwendung jedoch über eine Benutzeroberfläche verfügt, sollten Sie niemals im Vordergrundthread (dem Thread, der die Anwendungsnachrichtenschleife verarbeitet) schlafen.

    
Martin Liversage 15.08.2010, 08:14
quelle
11

Sie können versuchen, Timer zu verwenden,

%Vor%

Auch wenn Ihre Operation in der Schleife länger als 5 Sekunden dauern kann, können Sie

einstellen %Vor%

zum Deaktivieren des nächsten Timer-Ticks, bis der Vorgang in Schleife beendet wird Aber dann end end of loop Sie müssen erneut Timer wie

aktivieren %Vor%     
adopilot 15.08.2010 08:21
quelle
4

Benutze keine Schleife. Richten Sie ein Timer -Objekt ein und reagieren Sie auf das ausgelöste Ereignis. Pass auf, denn diese Ereignisse werden auf einen anderen Thread (den Thread des Timers aus dem Threadpool) ausgelöst.

    
Neil Barnwell 15.08.2010 08:28
quelle
1

Nehmen wir an, Sie haben eine for -loop, die Sie jede Sekunde zum Schreiben in eine Datenbank verwenden möchten. Ich würde dann einen Timer erstellen, der auf ein 1000-ms-Intervall eingestellt ist, und dann den Timer auf die gleiche Weise wie einen while -loop verwenden, wenn er wie ein for -loop funktionieren soll. Indem Sie die Ganzzahl vor der Schleife erstellen und ihr darin hinzufügen.

%Vor%     
Charp 04.05.2012 07:56
quelle

Tags und Links