Timer.AutoReset Properti
Definisi
Penting
Beberapa informasi terkait produk prarilis yang dapat diubah secara signifikan sebelum dirilis. Microsoft tidak memberikan jaminan, tersirat maupun tersurat, sehubungan dengan informasi yang diberikan di sini.
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
Nilai Properti
true
Timer jika harus menaikkan Elapsed peristiwa setiap kali interval berlalu; false
jika harus menaikkan Elapsed peristiwa hanya sekali, setelah interval pertama kali berlalu. Default adalah true
.
- Atribut
Contoh
Contoh berikut membuat Timer peristiwa yang Elapsed diaktifkan setelah 1,5 detik. Penanganan aktivitasnya kemudian menampilkan "Halo Dunia!" di konsol.
#using <system.dll>
using namespace System;
using namespace System::Timers;
public ref class Timer2
{
private:
static System::Timers::Timer^ aTimer;
public:
static void Main()
{
// Create a new Timer with Interval set to 1.5 seconds.
double interval = 1500.0;
aTimer = gcnew System::Timers::Timer(interval);
// 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;
// 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();
// 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);
}
private:
// Handle the Elapsed event.
static void OnTimedEvent( Object^ /*source*/, ElapsedEventArgs^ /*e*/ )
{
Console::WriteLine( "Hello World!" );
}
};
int main()
{
Timer2::Main();
}
// The example displays the following output:
// Hello World!
// Press the Enter key to exit the program.
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.
Keterangan
Jika AutoReset adalah false
, Start metode harus dipanggil untuk memulai hitungan lagi.
Mengatur ulang interval memengaruhi saat Elapsed peristiwa dinaikkan. Misalnya, jika Anda mengatur interval ke 5 detik lalu mengatur Enabled properti ke true
, hitungan dimulai pada saat Enabled diatur. Jika Anda mengatur ulang interval menjadi 10 detik saat hitungan adalah 3 detik, Elapsed peristiwa dinaikkan untuk pertama kalinya 13 detik setelah Enabled properti diatur ke true
.