TimeProvider.CreateTimer(TimerCallback, Object, TimeSpan, TimeSpan) Méthode
Définition
Important
Certaines informations portent sur la préversion du produit qui est susceptible d’être en grande partie modifiée avant sa publication. Microsoft exclut toute garantie, expresse ou implicite, concernant les informations fournies ici.
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 spécifiée pour le rappel doit être réentrante, car elle peut être appelée simultanément sur deux threads si le minuteur se déclenche à nouveau avant ou pendant qu’un rappel précédent est toujours géré.
- state
- Object
Objet à passer à l'callback
. Il peut s’agir de null.
- dueTime
- TimeSpan
Délai avant l’appel de callback
. Spécifiez InfiniteTimeSpan pour empêcher le démarrage du minuteur. 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 ITimer nouvellement créée.
Exceptions
callback
a la valeur Null.
Le nombre de millisecondes dans la valeur de dueTime
ou de period
est négatif et non égal à Infinite, ou est supérieur à MaxValue.
Remarques
Le délégué spécifié par le paramètre de rappel est appelé une fois après dueTime
écoulé, puis chaque fois que l’intervalle de temps period
est écoulé.
Si dueTime
est égal à 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 méthode Change(TimeSpan, TimeSpan).
Si period
est de 0 ou de -1 millisecondes et que dueTime
est positif, callback
est appelé une seule fois ; le comportement périodique du minuteur est désactivé, mais peut être réactivé à l’aide de la méthode Change(TimeSpan, TimeSpan).
L’instance de retour ITimer sera implicitement enracinée pendant que le minuteur est toujours planifié.
CreateTimer(TimerCallback, Object, TimeSpan, TimeSpan) capture le ExecutionContext et stocke celui-ci avec le ITimer à utiliser pour appeler callback
chaque fois qu’il est appelé. Cette capture peut être supprimée avec SuppressFlow().