Executer un timer à la fin d'une procédure
#1
Bonjour,

J'suis face à un probleme de taille. Il faut que je lance un utimer a la fin d'une procédure qui ressemble à ceci

TCL
proc ::BT::proc {nick host hand chan text} {
     *Environ 5 ou 6 messages*
set ::BT::timer [utimer 15 ::BT::proc_suivante]
}



Seulement dès que la procédure est déclenchée, le timer se déclenche aussi, ce qui fait que le temps s'écoule pendant l'envoi de ces 6 messages, et que finalement, à la fin de ces messages, le timer ne dure au final que deux secondes.

Je peux certes augmenter la durée du timer, mais dans le cas d'une procédure avec un nombre de lignes très variables, le temps peut etre soit beaucoup trop long, soit beaucoup trop court.

Y'a-t'il un moyen efficace pour executer un timer seulement à la fin de la procédure et pas avant ?

Cordialement,
Good jokes, bad jokes... it's not a joke if you don't have the...
[Image: http://uppix.net/2/7/1/4b4dfe464fb212453...10f21e.png]

BELATUCADRUS SEAL OF APPROVAL
Répondre Avertir
#2
Toutes les minutes tu va actualiser ton topic ? ^^
Ensuite tu pourais etre plus claire car personellement j'ai rien compris à la partie suivante :
Citation :Seulement dès que la procédure est déclenchée, le timer se déclenche aussi, ce qui fait que le temps s'écoule pendant l'envoi de ces 6 messages, et que finalement, à la fin de ces messages, le timer ne dure au final que deux secondes.

Si tu veux qu'ont t'aide soit plus explicite dans tes demandes et soit le plus claire possible en detaillant ce que tu souhaite au final
Répondre
#3
Extrait d'une discussion sur IRC, pour le suivi de la résolution du problème.

#eggdrop a écrit :[22:04:37] <MenzAgitat> faut pas juger au temps que prend d'afficher tout ce qu'il y a en file d'attente de puthelp
[22:04:46] <MenzAgitat> qui ne s'affiche qu'à raison d'une ligne / 2 secondes
[22:05:01] <Belatucadrus> ouais ça jsais
[22:05:03] <MenzAgitat> c'est pas quand il a fini de tout afficher que la proc se termine
[22:05:14] <MenzAgitat> ta proc s'exécute, se termine (et lance ton timer au passage)
[22:05:27] <MenzAgitat> et la file d'attente continue de s'afficher à son rythme
[22:05:36] <MenzAgitat> la proc n'a fait qu'ajouter des trucs dans une file d'attente
[22:05:38] <CrazyEgg> (alias_angelius@Zeolia) Bonne nuit CrazyCat
[22:05:42] <MenzAgitat> après c'est plus son problème
[22:05:52] <MenzAgitat> la file d'attente se vide d'elle même

--> solution suggérée : code ta propre file d'attente afin d'avoir un contrôle dessus.
Répondre Avertir
#4
Je n'ai pas les capacités necessaires pour coder ma propre file d'attente, je vais plutôt me pencher vers un script hybride.
Good jokes, bad jokes... it's not a joke if you don't have the...
[Image: http://uppix.net/2/7/1/4b4dfe464fb212453...10f21e.png]

BELATUCADRUS SEAL OF APPROVAL
Répondre Avertir
#5
Je déterre ce vieux post à toutes fins utiles, voici une façon de gérer une file d'attente alternative : Utiliser une file d'attente avec une priorité nulle pour l'envoi de messages
Répondre Avertir


Atteindre :


Utilisateur(s) parcourant ce sujet : 1 visiteur(s)
Tchat 100% gratuit -Discutez en toute liberté