Timer.AutoReset-Eigenschaft
Ruft einen Wert ab, der angibt, ob der Timer das Elapsed-Ereignis nach jedem oder nur nach dem ersten Ablaufen des Intervalls auslöst, oder legt diesen fest.
Namespace: System.Timers
Assembly: System (in system.dll)
Syntax
'Declaration
Public Property AutoReset As Boolean
'Usage
Dim instance As Timer
Dim value As Boolean
value = instance.AutoReset
instance.AutoReset = value
public bool AutoReset { get; set; }
public:
property bool AutoReset {
bool get ();
void set (bool value);
}
/** @property */
public boolean get_AutoReset ()
/** @property */
public void set_AutoReset (boolean value)
public function get AutoReset () : boolean
public function set AutoReset (value : boolean)
Eigenschaftenwert
true, wenn Timer das Elapsed-Ereignis immer auslösen soll, wenn das Intervall abläuft, false, wenn das Elapsed-Ereignis nur einmal nach dem ersten Ablaufen des Intervalls ausgelöst werden soll. Der Standardwert ist true.
Hinweise
Wenn Timer beim Aufruf der Start-Methode bereits aktiviert ist, wird das Intervall zurückgesetzt. Wenn AutoReset den Wert false aufweist, muss die Start-Methode aufgerufen werden, um den Zählvorgang erneut zu starten.
Das Zurücksetzen des Intervalls beeinflusst den Zeitpunkt, zu dem das Elapsed-Ereignis ausgelöst wird. Wenn Sie das Intervall z. B. auf 5 Sekunden festlegen und anschließend die Enabled-Eigenschaft auf true festlegen, beginnt der Zählvorgang zu dem Zeitpunkt, zu dem Enabled festgelegt wird. Wenn Sie das Intervall auf 10 Sekunden zurücksetzen, während der Zähler auf 3 Sekunden steht, wird das Elapsed-Ereignis das erste Mal 13 Sekunden nach dem Festlegen der Enabled-Eigenschaft auf true ausgelöst.
Beispiel
Im folgenden Beispiel wird ein Timer erstellt, der nach 10 Sekunden "Hello World!" in der Konsole anzeigt.
Verwenden Sie für dieses Beispiel den System.Timers-Namespace.
' From command line, compile with /r:System.dll
Imports System
Imports System.Timers
Public Class Timer2
Public Shared Sub Main()
' Normally, the timer is declared at the class level, so
' that it doesn't go out of scope when the method ends.
' In this example, the timer is needed only while Main
' is executing. However, KeepAlive must be used at the
' end of Main, to prevent the JIT compiler from allowing
' aggressive garbage collection to occur before Main
' ends.
'
' Create a timer with a ten second interval.
Dim aTimer As New System.Timers.Timer(10000)
' 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
Console.WriteLine("Press the Enter key to exit the program.")
Console.ReadLine()
' Keep the timer alive until the end of Main.
GC.KeepAlive(aTimer)
End Sub
' Specify what you want to happen when the Elapsed event is
' raised.
Private Shared Sub OnTimedEvent(source As Object, e As ElapsedEventArgs)
Console.WriteLine("Hello World!")
End Sub
End Class
// From command line, compile with /r:System.dll
using System;
using System.Timers;
public class Timer2
{
public static void Main()
{
// Normally, the timer is declared at the class level, so
// that it doesn't go out of scope when the method ends.
// In this example, the timer is needed only while Main
// is executing. However, KeepAlive must be used at the
// end of Main, to prevent the JIT compiler from allowing
// aggressive garbage collection to occur before Main
// ends.
//
// Create a timer with a ten second interval.
System.Timers.Timer aTimer = new System.Timers.Timer(10000);
// 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;
Console.WriteLine("Press the Enter key to exit the program.");
Console.ReadLine();
// Keep the timer alive until the end of Main.
GC.KeepAlive(aTimer);
}
// Specify what you want to happen when the Elapsed event is
// raised.
private static void OnTimedEvent(object source, ElapsedEventArgs e)
{
Console.WriteLine("Hello World!");
}
}
#using <system.dll>
using namespace System;
using namespace System::Timers;
public ref class Timer2
{
public:
static void Main()
{
// Normally, the timer is declared at the class level, so
// that it doesn't go out of scope when the method ends.
// In this example, the timer is needed only while Demo
// is executing. However, KeepAlive must be used at the
// end of Demo, to prevent the JIT compiler from allowing
// aggressive garbage collection to occur before Demo
// ends.
//
// Create a new Timer with Interval set to 10 seconds.
System::Timers::Timer^ aTimer = gcnew System::Timers::Timer( 10000 );
// Hook up the event handler for the Elapsed event.
aTimer->Elapsed += gcnew ElapsedEventHandler( OnTimedEvent );
// Only raise the event the first time Interval elapses.
aTimer->AutoReset = false;
aTimer->Enabled = true;
Console::WriteLine("Press the Enter key to exit the program.");
Console::ReadLine();
// Keep the timer alive until the end of the Demo method.
GC::KeepAlive(aTimer);
}
private:
// Specify what you want to happen when the Elapsed event is
// raised.
static void OnTimedEvent( Object^ /*source*/, ElapsedEventArgs^ /*e*/ )
{
Console::WriteLine( "Hello World!" );
}
};
int main()
{
Timer2::Main();
}
Plattformen
Windows 98, Windows 2000 SP4, Windows Millennium Edition, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition
.NET Framework unterstützt nicht alle Versionen sämtlicher Plattformen. Eine Liste der unterstützten Versionen finden Sie unter Systemanforderungen.
Versionsinformationen
.NET Framework
Unterstützt in: 2.0, 1.1, 1.0
Siehe auch
Referenz
Timer-Klasse
Timer-Member
System.Timers-Namespace
Interval
Enabled
Start
Elapsed