Timer.AutoReset Tulajdonság
Definíció
Fontos
Egyes információk olyan, kiadás előtti termékekre vonatkoznak, amelyek a kiadásig még jelentősen módosulhatnak. A Microsoft nem vállal kifejezett vagy törvényi garanciát az itt megjelenő információért.
public:
property bool AutoReset { bool get(); void set(bool value); };
public bool AutoReset { get; set; }
[System.Timers.TimersDescription("TimerAutoReset")]
public bool AutoReset { get; set; }
member this.AutoReset : bool with get, set
[<System.Timers.TimersDescription("TimerAutoReset")>]
member this.AutoReset : bool with get, set
Public Property AutoReset As Boolean
Tulajdonság értéke
true ha az Timer eseménynek minden alkalommal emelnie kell az Elapsed eseményt, amikor az intervallum el nem telik; false ha csak egyszer kell emelnie az Elapsed eseményt, az intervallum első eltelte után. Az alapértelmezett érték a true.
- Attribútumok
Példák
Az alábbi példa egy olyan eseményt Timer hoz létre, amelynek Elapsed eseménye 1,5 másodperc után aktiválódik. Az eseménykezelő ezután megjeleníti a "„Helló világ!” alkalmazás!" szöveget a konzolon.
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.
Megjegyzések
Ha AutoReset igen false, a Start metódust meg kell hívni, hogy újra elindíthassa a számlálást.
Az időköz alaphelyzetbe állítása hatással van az Elapsed esemény felmerülésekor. Ha például 5 másodpercre állítja az intervallumot, majd beállítja a Enabled tulajdonságot true, a szám a beállítás időpontjában Enabled kezdődik. Ha az intervallumot 10 másodpercre állítja vissza, amikor a szám 3 másodperc, akkor az Elapsed esemény először 13 másodperccel a Enabled tulajdonság beállítását truekövetően következik be.