J'ai un morceau de code qui a une procédure, je veux seulement que le proc se déclenche, au plus toutes les 2 minutes. S'il s'est déclenché au cours des 2 dernières minutes, il devrait simplement quitter. Actuellement, il a un petit délai avant de s'exécuter (après 5000), mais ce que cela semble faire, est de mettre en file d'attente toutes les autres demandes d'exécution qui ont eu lieu au repos (5 secondes), puis de pummel les commandes en file d'attente dans une vague d'activité.arrêter tcl procédure de fonctionner plus régulièrement qu'une fois toutes les 2 minutes, peu importe combien de fois il est appelé
Évidemment, cela manque une partie importante, mais
j'ai envisagé de faire quelque chose avec des variables telles que:
#gets current time since epoch as var0
set timer0 clock format [clock seconds] -format %s
#gets current time since epoch as var1
set timer1 clock format [clock seconds] -format %s
#calculates elapsed time since epoch in seconds, converts seconds to minutes
set split [ expr (($timer0 - $timer1)/60)/60 ]
if { $split > 2 } {
my_proc $maybe_1var $maybe_2vars $maybe_3vars
} else {
exit super gracefully
}
Je peux fournir des extraits de mon code actuel si vous le souhaitez. Ce n'est pas aussi élégant que ce que j'imagine, et je ne suis pas sûr qu'il existe de meilleures façons de le faire dans Tcl.
pouvez-vous s'il vous plaît affiner votre histoire et de supprimer des bruits comme G'day, etc. Des cris de joie? – manetsus
excuses .. il a maintenant été rangé. laissez-moi savoir si c'est encore trop occupé. – Matty
Je viens de mettre à jour votre question, je l'approuve, sinon les réviseurs l'approuveraient dans quelques heures. – manetsus