Un événement déclencheur, à l'aide de la minuterie sur un jour et de l'heure
Je suis en utilisant le Système.Minuterie pour déclencher un événement. Actuellement, je le déclencher à chaque 1 heure et vérifier s'il correspond à la valeur configurée (jour,heure).
Mais il est possible de déclencher ce à un moment précis? comme suppose que le dimanche à 12h.
Planificateur de Tâches de Windows serait plus approprié, mais ce n'est pas une option.
Merci d'avance
OriginalL'auteur fireBand | 2011-01-24
Vous devez vous connecter pour publier un commentaire.
Il n'est pas clair pourquoi vous ne réglez pas la minuterie d'Intervalle à la cible de date/heure. Il y a une limite sur le nombre de millisecondes, vous pouvez de temps jusqu'à 2^31 millisecondes, 27 jours. Vous allez être bon aussi longtemps que vous pouvez rester dans cette fourchette.
Sûr, il suffit d'utiliser AddDays() pour ajouter le nombre de jours entre DayOfWeek et Maintenant.DayOfWeek, coulé à l'int. Ajouter 7 si la valeur est négative.
OriginalL'auteur Hans Passant
La minuterie ne prend pas en charge ce type d'intervalle, mais vous pouvez consulter toutes les 20 secondes pour que le jour et l'heure.
Modifier Désolé que vous faites déjà... pourquoi ne pas faire l'intervalle de la moitié du temps, chaque fois que vous consultez (Une Zeno timer)?
OriginalL'auteur Erno de Weerd
Dans une situation similaire, je suis en utilisant Système.Le filetage.Minuterie pour atteindre cet objectif. Fondamentalement, j'ai mis son temps à desiredDateTime - DateTime.Maintenant, de sorte que la tique à desiredDateTime.
Si vous obtenez une autre date en attendant, vous pouvez user de la Minuterie.Modifier() pour modifier la tique de temps pour la nouvelle date. N'oubliez pas de Jeter() la Minuterie lorsque vous n'en avez plus besoin!
OriginalL'auteur ShdNx