Timer.AutoReset Eigenschap

Definitie

Hiermee haalt u een Booleaanse waarde op die aangeeft of de ElapsedTimer gebeurtenis slechts eenmaal () of herhaaldelijk (truefalse) moet worden gegenereerd.

public:
 property bool AutoReset { bool get(); void set(bool value); };
[System.Timers.TimersDescription("TimerAutoReset")]
public bool AutoReset { get; set; }
[<System.Timers.TimersDescription("TimerAutoReset")>]
member this.AutoReset : bool with get, set
Public Property AutoReset As Boolean

Waarde van eigenschap

true als de Timer gebeurtenis elke keer moet worden gegenereerd Elapsed wanneer het interval is verstreken; false als de Elapsed gebeurtenis slechts één keer moet worden gegenereerd, na de eerste keer dat het interval is verstreken. De standaardwaarde is true.

Kenmerken

Voorbeelden

In het volgende voorbeeld wordt een Timer gebeurtenis gemaakt die Elapsed na 1,5 seconden wordt geactiveerd. De gebeurtenis-handler geeft vervolgens 'Hallo wereld!' weer op de console.

using System;
using System.Timers;

public class Example
{
    private static Timer aTimer;

    public static void Main()
    {
        // Create a timer with a 1.5 second interval.
        double interval = 1500.0;
        aTimer = new System.Timers.Timer(interval);

        // Hook up the event handler for the Elapsed event.
        aTimer.Elapsed += new ElapsedEventHandler(OnTimedEvent);

        // Only raise the event the first time Interval elapses.
        aTimer.AutoReset = false;
        aTimer.Enabled = true;

        // Ensure the event fires before the exit message appears.
        System.Threading.Thread.Sleep((int) interval * 2);
        Console.WriteLine("Press the Enter key to exit the program.");
        Console.ReadLine();
    }

    // Handle the Elapsed event.
    private static void OnTimedEvent(object source, ElapsedEventArgs e)
    {
        Console.WriteLine("Hello World!");
    }
}
// This example displays the following output:
//       Hello World!
//       Press the Enter key to exit the program.
open System.Threading
open System.Timers

// Handle the Elapsed event.
let onTimedEvent source e =
    printfn "Hello World!"

// Create a timer with a 1.5 second interval.
let interval = 1500.
let aTimer = new Timer(interval)

// Hook up the event handler for the Elapsed event.
aTimer.Elapsed.AddHandler(ElapsedEventHandler onTimedEvent)

// Only raise the event the first time Interval elapses.
aTimer.AutoReset <- false
aTimer.Enabled <- true

// Ensure the event fires before the exit message appears.
Thread.Sleep(interval * 2. |> int)
printfn "Press the Enter key to exit the program."
stdin.ReadLine() |> ignore

// This example displays the following output:
//       Hello World!
//       Press the Enter key to exit the program.
Imports System.Timers

Public Module Example
    Private aTimer As System.Timers.Timer

    Public Sub Main()
        ' Create a timer with a 1.5 second interval.
        Dim interval As Double = 1500.0
        aTimer = New System.Timers.Timer(interval)

        ' Hook up the event handler for the Elapsed event.
        AddHandler aTimer.Elapsed, AddressOf OnTimedEvent

        ' Only raise the event the first time Interval elapses.
        aTimer.AutoReset = False
        aTimer.Enabled = True
        
        
        ' Ensure the event fires before the exit message appears.
        System.Threading.Thread.Sleep(CInt(interval * 2))
        Console.WriteLine("Press the Enter key to exit the program.")
        Console.ReadLine()

        ' If the timer is declared in a long-running method, use
        ' KeepAlive to prevent garbage collection from occurring
        ' before the method ends.
        'GC.KeepAlive(aTimer)
    End Sub

    ' Specify what you want to happen when the Elapsed event is 
    ' raised.
    Private Sub OnTimedEvent(source As Object, e As ElapsedEventArgs)
        Console.WriteLine("Hello World!")
    End Sub
End Module
' This example displays the following output:
'       Hello World!
'       Press the Enter key to exit the program.

Opmerkingen

Als AutoReset dat het is false, moet de Start methode worden aangeroepen om het aantal opnieuw te starten.

Het opnieuw instellen van het interval is van invloed op het moment dat de Elapsed gebeurtenis wordt gegenereerd. Als u bijvoorbeeld het interval instelt op 5 seconden en vervolgens de Enabled eigenschap trueinstelt op, begint het aantal op het moment dat het aantal Enabled is ingesteld. Als u het interval opnieuw instelt op 10 seconden wanneer het aantal 3 seconden is, wordt de Elapsed gebeurtenis gegenereerd voor de eerste keer 13 seconden nadat de Enabled eigenschap is ingesteld op true.

Van toepassing op

Zie ook