Erstellen eines Timers in Ihrer C#-Konsolenanwendung
Diese Anleitung zeigt, wie Sie mithilfe der Klasse System.Threading.Timer
einen Timer in eine C#-Konsolenanwendung integrieren. Diese Klasse vereinfacht den Prozess der wiederholten Ausführung einer Methode in festgelegten Intervallen.
Implementierungsbeispiel:
Der folgende Code zeigt, wie man ein Timer
-Objekt erstellt und dessen Rückrufmethode, das Ausführungsintervall (in Millisekunden) und ein optionales Statusobjekt definiert:
<code class="language-csharp">using System; using System.Threading; public class TimerExample { private Timer _timer; public void Main(string[] args) { // Creates a timer that calls TimerCallback every 2 seconds (2000 milliseconds) _timer = new Timer(TimerCallback, null, 0, 2000); // Keeps the console application running until the user presses Enter Console.ReadLine(); } private void TimerCallback(object state) { // Actions to perform at each timer interval, e.g., updating data or displaying a message Console.WriteLine("Timer event triggered at: " + DateTime.Now); } }</code>
Optimieren mit GC.KeepAlive()
In Situationen mit häufiger Schleifenausführung kann es zu unnötigem Ressourcenverbrauch kommen. Die GC.KeepAlive()
-Methode trägt zur Optimierung der Speicherbereinigung bei, was zu einer verbesserten Speicherverwaltung führt.
Erweiterter Code:
Dieser aktualisierte Code enthält GC.KeepAlive()
für eine bessere Ressourcenverwaltung:
<code class="language-csharp">// ... previous code ... private static void TimerCallback(Object o) { GC.KeepAlive(o); // Prevents premature garbage collection of the 'o' object // ... rest of the TimerCallback method ... }</code>
Diese Methoden ermöglichen eine effiziente Timer-Integration in Ihre C#-Konsolenanwendung und ermöglichen die geplante Aufgabenausführung in definierten Intervallen.
Das obige ist der detaillierte Inhalt vonWie implementiert man einen Timer in einer C#-Konsolenanwendung?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!