Share via


TimeProvider.CreateTimer(TimerCallback, Object, TimeSpan, TimeSpan) Méthode

Définition

Crée un ITimer instance à l’aide de TimeSpan valeurs pour mesurer les intervalles de temps.

public:
 virtual System::Threading::ITimer ^ CreateTimer(System::Threading::TimerCallback ^ callback, System::Object ^ state, TimeSpan dueTime, TimeSpan period);
public virtual System.Threading.ITimer CreateTimer (System.Threading.TimerCallback callback, object? state, TimeSpan dueTime, TimeSpan period);
abstract member CreateTimer : System.Threading.TimerCallback * obj * TimeSpan * TimeSpan -> System.Threading.ITimer
override this.CreateTimer : System.Threading.TimerCallback * obj * TimeSpan * TimeSpan -> System.Threading.ITimer
Public Overridable Function CreateTimer (callback As TimerCallback, state As Object, dueTime As TimeSpan, period As TimeSpan) As ITimer

Paramètres

callback
TimerCallback

Délégué représentant une méthode à exécuter lorsque le minuteur se déclenche. La méthode doit être réentrée, car elle peut être appelée simultanément sur deux threads si le minuteur se déclenche à nouveau pendant qu’un rappel précédent est toujours en cours de traitement.

state
Object

Objet à passer à .callback Celui-ci peut être null.

dueTime
TimeSpan

La durée de délai avant callback est appelée. Spécifiez InfiniteTimeSpan pour empêcher le démarrage de la minuterie. Spécifiez Zero pour démarrer immédiatement le minuteur.

period
TimeSpan

Intervalle de temps entre les appels de callback. Spécifiez InfiniteTimeSpan pour désactiver la signalisation périodique.

Retours

Instance nouvellement créée de ITimer.

Exceptions

callback a la valeur null.

Le nombre de millisecondes dans la valeur de dueTime ou period est négatif et non égal à , ou est supérieur à InfiniteInt32.MaxValue.

Remarques

Le délégué spécifié par le paramètre de rappel est appelé une fois après dueTime l’expiration, puis chaque fois que l’intervalle period de temps s’écoule.

Si dueTime est zéro, le rappel est appelé immédiatement. Si dueTime est -1 millisecondes, callback n’est pas appelé ; le minuteur est désactivé, mais peut être réactivé en appelant la Change(TimeSpan, TimeSpan) méthode.

Si period la valeur est de 0 ou -1 millisecondes et dueTime est positive, callback est appelée une fois ; le comportement périodique du minuteur est désactivé, mais peut être réactivé à l’aide de la Change(TimeSpan, TimeSpan) méthode .

Le instance retourné ITimer est implicitement rooté pendant que le minuteur est toujours planifié.

CreateTimer(TimerCallback, Object, TimeSpan, TimeSpan) capture le ExecutionContext et stocke celui-ci avec pour ITimer l’utiliser dans l’appel callback chaque fois qu’il est appelé. Cette capture peut être supprimée avec SuppressFlow().

S’applique à