Heim >Backend-Entwicklung >C++ >Wie implementiert man einen Timer in einer C#-Konsolenanwendung?

Wie implementiert man einen Timer in einer C#-Konsolenanwendung?

Patricia Arquette
Patricia ArquetteOriginal
2025-01-20 05:07:10678Durchsuche

How to Implement a Timer in a C# Console Application?

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!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn