Leggere in inglese

Condividi tramite


Timer Costruttori

Definizione

Importante

Alcune informazioni sono relative alla release non definitiva del prodotto, che potrebbe subire modifiche significative prima della release definitiva. Microsoft non riconosce alcuna garanzia, espressa o implicita, in merito alle informazioni qui fornite.

Inizializza una nuova istanza della classe Timer.

Overload

Timer()

Inizializza una nuova istanza della classe Timer e imposta tutte le proprietà sui rispettivi valori iniziali.

Timer(Double)

Inizializza una nuova istanza della classe Timer e imposta la proprietà Interval sul numero di millisecondi specificato.

Timer(TimeSpan)

Inizializza una nuova istanza della Timer classe , impostando la Interval proprietà sul punto specificato.

Timer()

Origine:
Timer.cs
Origine:
Timer.cs
Origine:
Timer.cs

Inizializza una nuova istanza della classe Timer e imposta tutte le proprietà sui rispettivi valori iniziali.

public Timer();

Esempio

Nell'esempio seguente viene creata un'istanza di un Timer oggetto che genera l'evento Timer.Elapsed ogni due secondi (2000 millisecondi), imposta un gestore eventi per l'evento e avvia il timer. Il gestore eventi visualizza il valore della ElapsedEventArgs.SignalTime proprietà ogni volta che viene generato.

using System;
using System.Timers;

public class Example
{
    private static Timer aTimer;

    public static void Main()
    {
        // Create a timer and set a two second interval.
        aTimer = new System.Timers.Timer();
        aTimer.Interval = 2000;

        // Hook up the Elapsed event for the timer. 
        aTimer.Elapsed += OnTimedEvent;

        // Have the timer fire repeated events (true is the default)
        aTimer.AutoReset = true;

        // Start the timer
        aTimer.Enabled = true;

        Console.WriteLine("Press the Enter key to exit the program at any time... ");
        Console.ReadLine();
    }

    private static void OnTimedEvent(Object source, System.Timers.ElapsedEventArgs e)
    {
        Console.WriteLine("The Elapsed event was raised at {0}", e.SignalTime);
    }
}
// The example displays output like the following: 
//       Press the Enter key to exit the program at any time... 
//       The Elapsed event was raised at 5/20/2015 8:48:58 PM 
//       The Elapsed event was raised at 5/20/2015 8:49:00 PM 
//       The Elapsed event was raised at 5/20/2015 8:49:02 PM 
//       The Elapsed event was raised at 5/20/2015 8:49:04 PM 
//       The Elapsed event was raised at 5/20/2015 8:49:06 PM

Commenti

Nella tabella seguente vengono illustrati i valori iniziali delle proprietà per un'istanza di Timer.

Proprietà Valore iniziale
AutoReset true
Enabled false
Interval 100 millisecondi
SynchronizingObject Riferimento null (Nothing in Visual Basic).

Vedi anche

Si applica a

.NET 10 e altre versioni
Prodotto Versioni
.NET Core 2.0, Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7, 8, 9, 10
.NET Framework 1.1, 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
.NET Standard 2.0, 2.1

Timer(Double)

Origine:
Timer.cs
Origine:
Timer.cs
Origine:
Timer.cs

Inizializza una nuova istanza della classe Timer e imposta la proprietà Interval sul numero di millisecondi specificato.

public Timer(double interval);

Parametri

interval
Double

Tempo che intercorre tra gli eventi, in millisecondi. Il valore deve essere maggiore di zero e minore o uguale a Int32.MaxValue.

Eccezioni

Il valore del interval parametro è minore o uguale a zero o maggiore di Int32.MaxValue.

Esempio

Nell'esempio seguente viene creata un'istanza di un Timer oggetto che genera l'evento Timer.Elapsed ogni due secondi (2000 millisecondi), imposta un gestore eventi per l'evento e avvia il timer. Il gestore eventi visualizza il valore della ElapsedEventArgs.SignalTime proprietà ogni volta che viene generato.

using System;
using System.Threading.Tasks;
using System.Timers;

class Example
{
   static void Main()
   {
      Timer timer = new Timer(1000);
      timer.Elapsed += async ( sender, e ) => await HandleTimer();
      timer.Start();
      Console.Write("Press any key to exit... ");
      Console.ReadKey();
   }

   private static Task HandleTimer()
   {
     Console.WriteLine("\nHandler not implemented..." );
     throw new NotImplementedException();
   }
}
// The example displays output like the following:
//   Press any key to exit...
//   Handler not implemented...
//   
//   Unhandled Exception: System.NotImplementedException: The method or operation is not implemented.
//      at Example.HandleTimer()
//      at Example.<<Main>b__0>d__2.MoveNext()
//   --- End of stack trace from previous location where exception was thrown ---
//      at System.Runtime.CompilerServices.AsyncMethodBuilderCore.<>c__DisplayClass2.<ThrowAsync>b__5(Object state)
//      at System.Threading.ExecutionContext.RunInternal(ExecutionContext executionContext, ContextCallback callback, Object state, Boolean preserveSyncCtx)
//      at System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state, Boolean preserveSyncCtx)
//      at System.Threading.QueueUserWorkItemCallback.System.Threading.IThreadPoolWorkItem.ExecuteWorkItem()
//      at System.Threading.ThreadPoolWorkQueue.Dispatch()

Commenti

Questo costruttore imposta la Interval proprietà della nuova istanza del timer, ma non abilita il timer.

Vedi anche

Si applica a

.NET 10 e altre versioni
Prodotto Versioni
.NET Core 2.0, Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7, 8, 9, 10
.NET Framework 1.1, 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
.NET Standard 2.0, 2.1

Timer(TimeSpan)

Origine:
Timer.cs
Origine:
Timer.cs
Origine:
Timer.cs

Inizializza una nuova istanza della Timer classe , impostando la Interval proprietà sul punto specificato.

public Timer(TimeSpan interval);

Parametri

interval
TimeSpan

Tempo tra gli eventi. Il valore in millisecondi deve essere maggiore di zero e minore o uguale a MaxValue.

Si applica a

.NET 10 e altre versioni
Prodotto Versioni
.NET 7, 8, 9, 10