Timer (fiabilité) [Résolu]

- 27 déc. 2010 à 11:21 - Dernière réponse :
Messages postés
133
Date d'inscription
dimanche 23 juin 2002
Dernière intervention
3 janvier 2015
- 30 déc. 2010 à 15:09
Bonjour,

J'ai écris un programme VB.net qui tourne 24h/24h et qui dois exécuter des actions à des heures précises.

Je veut par exemple que tous les jours à 15:25:00 il m'ouvre une playlist musicale.

J'ai donc créé un timer à Interval de 1000 pour vérifier à chaque "Tick" si l'heure de maintenant est égale à 15:25:00.

Généralement ça fonctionne très bien, seulement, parfois, comme hier, il a passé l'heure sans exécuter l'action. Comme s'il avait passé ma seconde sans rien faire.

Comment est-ce possible ? Y a t'il une solution plus précise ?

Merci :)

A++
Afficher la suite 

Votre réponse

8 réponses

Meilleure réponse
Messages postés
3238
Date d'inscription
jeudi 26 novembre 2009
Dernière intervention
14 mars 2018
- 27 déc. 2010 à 14:05
3
Merci
Salut

C'est possible que quand l'évenement timer_tick
a été relevé et que tu verifies l'heure
l'heure à comparer est déjà passer
l'évenement du timer est relevé en théorie toute
les timer.interval que tu as défini mais seulement pas avant d'avoir terminé la sub ou la
fonction
Faut il que le playlist soit executé à la seconde précise ?
Si non
Tu peux peut etre verifier si l'heure est entre
15:25:00 et 15:25:03 et exécuter le playlist
un truc du genre
if time >= 15:25:00 and time <= 15:25:03 then
if not playlistjoue then 'playlistjoue boolean variable indique si le playlist joue
exécute playlist
end if
end if

Merci cs_ShayW 3

Avec quelques mots c'est encore mieux Ajouter un commentaire

Codes Sources a aidé 90 internautes ce mois-ci

Commenter la réponse de cs_ShayW
0
Merci
Oui je pense que c'est la seule solution pour être sur qu'il exécute ma tâche.

ou Agrandir l'interval du Tick toutes les minutes, et ne plus parler en secondes ?

Merci pour ta réponse,
Commenter la réponse de Utilisateur anonyme
Messages postés
3238
Date d'inscription
jeudi 26 novembre 2009
Dernière intervention
14 mars 2018
- 27 déc. 2010 à 22:42
0
Merci
non au contraire diminues ton interval à 1
comme ça tu as plus de chance de saisir l'heure
parce que dans ce cas l'évenement tick est relevé
tous les 1 milisecondes environ
donc tous les millisecondes tu verifies l'heure
Commenter la réponse de cs_ShayW
Messages postés
3983
Date d'inscription
jeudi 14 juillet 2005
Dernière intervention
30 juin 2013
- 28 déc. 2010 à 00:17
0
Merci
Consomme trop de ressources ... Ne serait-ce pas une meilleure idée d'utiliser les tâches planifiées de Windows pour ce genre d'actions ?

VB.NET is good ... VB6 is better
Utilise Réponse acceptée quand un post répond à ta question
Commenter la réponse de cs_ghuysmans99
0
Merci
Hello,

Bonne idée, mais non, j'exécute des codes bien précis. Ca aurait été plus simple en effet :-)

A++
Commenter la réponse de Utilisateur anonyme
Messages postés
3983
Date d'inscription
jeudi 14 juillet 2005
Dernière intervention
30 juin 2013
- 28 déc. 2010 à 00:27
0
Merci
Ca ne marcherait pas en utilisant les arguments en ligne de commande ?

VB.NET is good ... VB6 is better
Utilise Réponse acceptée quand un post répond à ta question
Commenter la réponse de cs_ghuysmans99
0
Merci
Non plus.

Je compare dorénavant juste l'heure et les minutes pour être sur.

Merci pour vos réponses

A++
Commenter la réponse de Utilisateur anonyme
Messages postés
133
Date d'inscription
dimanche 23 juin 2002
Dernière intervention
3 janvier 2015
- 30 déc. 2010 à 15:09
0
Merci
Salutation,
En connaissant l'heure de ton action tu pourrais ne pas faire de teste sur l'heure au niveau de ton timer durant les 24 heures car cela prend de la ressource.
Fait donc un teste juste 15 secondes avant l'heure choisie
15:25:00 = 55500 donc a 55485 secondes tu controles ton heure jusqu'a ce que l'action soit faite tu compare ton 55485 a heure du PC tranformer en seconde comme ca pas besoin de compter sur le timer.
bonne continuation
Commenter la réponse de cs_akzo

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.