Concernant les procédures appelées par Timer() et TimerSys(), je me pose
une question générale.
Préconiseriez-vous de façon systématique l'arrêt du timer en début de
procédure?
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
Romain PETIT
Eric Regnier (B) a écrit :
Salut toutes et tous,
Concernant les procédures appelées par Timer() et TimerSys(), je me pose une question générale. Préconiseriez-vous de façon systématique l'arrêt du timer en début de procédure?
Tiens c'est marrant, je me suis posé la question récemment suite à mes problèmes de threads et de timer... Dans la doc, il est spécifié : "Temps d'exécution de la procédure Si le temps de traitement de la procédure appelée par le timer est supérieur au temps demandé entre chaque appel de la procédure, les appels du timer ne s'empilent pas : il n'y aura qu'un seul appel en attente."
Il serait interessant de savoir si ce comportement est vraiment sûr à 100% (et cela aussi sur un Xeon sous WS2003)... (désolé, pas le temps pour ma part sauf si vous fournissez le code pour tester cela...)
A+
-- Romain PETIT http://cerbermail.com/?IJmancZl88 (cliquez sur le lien ci-dessus pour me contacter en privé)
Eric Regnier (B) a écrit :
Salut toutes et tous,
Concernant les procédures appelées par Timer() et TimerSys(), je me pose
une question générale.
Préconiseriez-vous de façon systématique l'arrêt du timer en début de
procédure?
Tiens c'est marrant, je me suis posé la question récemment suite à mes
problèmes de threads et de timer...
Dans la doc, il est spécifié :
"Temps d'exécution de la procédure
Si le temps de traitement de la procédure appelée par le timer est
supérieur au temps demandé entre chaque appel de la procédure, les
appels du timer ne s'empilent pas : il n'y aura qu'un seul appel en
attente."
Il serait interessant de savoir si ce comportement est vraiment sûr à
100% (et cela aussi sur un Xeon sous WS2003)...
(désolé, pas le temps pour ma part sauf si vous fournissez le code pour
tester cela...)
A+
--
Romain PETIT
http://cerbermail.com/?IJmancZl88
(cliquez sur le lien ci-dessus pour me contacter en privé)
Concernant les procédures appelées par Timer() et TimerSys(), je me pose une question générale. Préconiseriez-vous de façon systématique l'arrêt du timer en début de procédure?
Tiens c'est marrant, je me suis posé la question récemment suite à mes problèmes de threads et de timer... Dans la doc, il est spécifié : "Temps d'exécution de la procédure Si le temps de traitement de la procédure appelée par le timer est supérieur au temps demandé entre chaque appel de la procédure, les appels du timer ne s'empilent pas : il n'y aura qu'un seul appel en attente."
Il serait interessant de savoir si ce comportement est vraiment sûr à 100% (et cela aussi sur un Xeon sous WS2003)... (désolé, pas le temps pour ma part sauf si vous fournissez le code pour tester cela...)
A+
-- Romain PETIT http://cerbermail.com/?IJmancZl88 (cliquez sur le lien ci-dessus pour me contacter en privé)
Pierre BOUSQUET
Personnellement j'utilise une variable globale qui m'indique si la procedure du timer précédent est encore en cours ou pas
"Eric Regnier (B)" a écrit dans le message de news:c0i5bh$12m$
Salut toutes et tous,
Concernant les procédures appelées par Timer() et TimerSys(), je me pose une question générale. Préconiseriez-vous de façon systématique l'arrêt du timer en début de procédure?
-- Eric.
Personnellement j'utilise une variable globale qui m'indique si la procedure
du timer précédent est encore en cours ou pas
"Eric Regnier (B)" <er@no-spam.fr> a écrit dans le message de
news:c0i5bh$12m$1@news-reader5.wanadoo.fr...
Salut toutes et tous,
Concernant les procédures appelées par Timer() et TimerSys(), je me pose
une question générale.
Préconiseriez-vous de façon systématique l'arrêt du timer en début de
procédure?
Personnellement j'utilise une variable globale qui m'indique si la procedure du timer précédent est encore en cours ou pas
"Eric Regnier (B)" a écrit dans le message de news:c0i5bh$12m$
Salut toutes et tous,
Concernant les procédures appelées par Timer() et TimerSys(), je me pose une question générale. Préconiseriez-vous de façon systématique l'arrêt du timer en début de procédure?
-- Eric.
spetb
> Concernant les procédures appelées par Timer() et TimerSys(), je me pose une question générale. Préconiseriez-vous de façon systématique l'arrêt du timer en début de procédure?
Bonjour,
Pour ma part, sur des applis travaillant 24 H sur 24 et 7 jours sur 7, pour des timers renvoyant toutes les 4 secondes une lecture d'un port Com, je n'arrêtais pas le timer en début de procédure lors des premiers essais. Puis lors d'autres essais, je l'ai stoppé et a ma grande surprise, j'ai constaté une nette amélioration des performance de l'appli, donc j'utilise désormais cette deuxième formule dans la majorité des cas. Autre info, j'ai pratiquement complétement abandonné Timer au profit de TimerSys pour des raisons similaires.
Exemple du code que j'emploie : // Code d'initialisation de l'appli TimerSys("pLit",eMaTempo,1) // Lancement du timer // eMaTempo est contenu dans un fichier de paramêtres // afin de pouvoir être modifié par l'utilisateur
PROCEDURE pLit() eLen, eLenBuffer sont des entiers cLit est une chaîne ASCIIZ sur 255 FinTimerSys(1) cLit = "" eLenBuffer = sDansFileEntrée(ePortCom) cLit = sLit(ePortCom,eLenBuffer) SI cLit <> "" ALORS eLen = Taille(SansEspace(cLit)) SI eLen = 49 ALORS // Si la taille des infos lues sur le port Com est = à 49, // l'info m'interesse, sinon je fais un autre traitement. Lit.Enreg = SansEspace(cLit) Lit.Controle = Faux eLen = Taille(SansEspace(cLit)) HAjoute(Lit) pMaj() pMajP() pMajHistorique() Son("C:Mes ProjetsDirectExePointCorrect.wav") SINON cLit = "" Message("Pas d'Informations") Ouvre(pTestFaux) FIN FIN TimerSys("pLit",eMaTempo,1)
> Concernant les procédures appelées par Timer() et TimerSys(), je me pose
une question générale.
Préconiseriez-vous de façon systématique l'arrêt du timer en début de
procédure?
Bonjour,
Pour ma part, sur des applis travaillant 24 H sur 24 et 7 jours sur 7, pour
des timers renvoyant toutes les 4 secondes une lecture d'un port Com, je
n'arrêtais pas le timer en début de procédure lors des premiers essais.
Puis lors d'autres essais, je l'ai stoppé et a ma grande surprise, j'ai
constaté une nette amélioration des performance de l'appli, donc j'utilise
désormais cette deuxième formule dans la majorité des cas.
Autre info, j'ai pratiquement complétement abandonné Timer au profit de
TimerSys pour des raisons similaires.
Exemple du code que j'emploie :
// Code d'initialisation de l'appli
TimerSys("pLit",eMaTempo,1) // Lancement du timer
// eMaTempo est contenu dans un fichier de paramêtres
// afin de pouvoir être modifié par l'utilisateur
PROCEDURE pLit()
eLen, eLenBuffer sont des entiers
cLit est une chaîne ASCIIZ sur 255
FinTimerSys(1)
cLit = ""
eLenBuffer = sDansFileEntrée(ePortCom)
cLit = sLit(ePortCom,eLenBuffer)
SI cLit <> "" ALORS
eLen = Taille(SansEspace(cLit))
SI eLen = 49 ALORS
// Si la taille des infos lues sur le port Com est = à 49,
// l'info m'interesse, sinon je fais un autre traitement.
Lit.Enreg = SansEspace(cLit)
Lit.Controle = Faux
eLen = Taille(SansEspace(cLit))
HAjoute(Lit)
pMaj()
pMajP()
pMajHistorique()
Son("C:Mes ProjetsDirectExePointCorrect.wav")
SINON
cLit = ""
Message("Pas d'Informations")
Ouvre(pTestFaux)
FIN
FIN
TimerSys("pLit",eMaTempo,1)
Sincères Salutations
--
Jean-Claude FLAJOULOT
Sécurité Pointage & Biométrie
SPetB_no_spam@wandoo.fr
(Otez _no_spam pour me contacter en PV)
> Concernant les procédures appelées par Timer() et TimerSys(), je me pose une question générale. Préconiseriez-vous de façon systématique l'arrêt du timer en début de procédure?
Bonjour,
Pour ma part, sur des applis travaillant 24 H sur 24 et 7 jours sur 7, pour des timers renvoyant toutes les 4 secondes une lecture d'un port Com, je n'arrêtais pas le timer en début de procédure lors des premiers essais. Puis lors d'autres essais, je l'ai stoppé et a ma grande surprise, j'ai constaté une nette amélioration des performance de l'appli, donc j'utilise désormais cette deuxième formule dans la majorité des cas. Autre info, j'ai pratiquement complétement abandonné Timer au profit de TimerSys pour des raisons similaires.
Exemple du code que j'emploie : // Code d'initialisation de l'appli TimerSys("pLit",eMaTempo,1) // Lancement du timer // eMaTempo est contenu dans un fichier de paramêtres // afin de pouvoir être modifié par l'utilisateur
PROCEDURE pLit() eLen, eLenBuffer sont des entiers cLit est une chaîne ASCIIZ sur 255 FinTimerSys(1) cLit = "" eLenBuffer = sDansFileEntrée(ePortCom) cLit = sLit(ePortCom,eLenBuffer) SI cLit <> "" ALORS eLen = Taille(SansEspace(cLit)) SI eLen = 49 ALORS // Si la taille des infos lues sur le port Com est = à 49, // l'info m'interesse, sinon je fais un autre traitement. Lit.Enreg = SansEspace(cLit) Lit.Controle = Faux eLen = Taille(SansEspace(cLit)) HAjoute(Lit) pMaj() pMajP() pMajHistorique() Son("C:Mes ProjetsDirectExePointCorrect.wav") SINON cLit = "" Message("Pas d'Informations") Ouvre(pTestFaux) FIN FIN TimerSys("pLit",eMaTempo,1)
Concernant les procédures appelées par Timer() et TimerSys(), je me pose une question générale. Préconiseriez-vous de façon systématique l'arrêt du timer en début de procédure?
Merci à tous pour vos réponses.
-- Eric.
Eric Regnier (B) a écrit:
Concernant les procédures appelées par Timer() et TimerSys(), je me
pose une question générale.
Préconiseriez-vous de façon systématique l'arrêt du timer en début de
procédure?
Concernant les procédures appelées par Timer() et TimerSys(), je me pose une question générale. Préconiseriez-vous de façon systématique l'arrêt du timer en début de procédure?