Bonjour, j'essaye de faire un programme pour monitorer des applications
diverses. Toutes les 30 secondes (le temps n'a pas besoin du tout d'être
précis), je voudrais faire des requêtes dans des tables de log par exemple.
J'ai constaté en utilisant le composant Timer (en C#), que le traitement
dans le tick du timer ne se finissait pas. Or, mon intervalle étant de 30s,
j'ai largement le temps il me semble, de faire mes quelques requêtes.
Est-ce déjà la bonne méthode d'utiliser un timer dans ce cas ? Si oui, est
ce quelqu'un a déjà constaté ce genre de pb ? Je trouve pas mal d'infos sur
les timers mais toujours pour des traitements très courts dans les ticks.
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
DVDB
Dans la version 2.0 du Framework, il existe un composant BackGroundWorker qui pourrait être intéressant car il permettrait de lancer un nouveau thread qui ferait les requetes puis afficherait le résultat.
Indépendemment de ça, avez-vous essayé d'augmenter la durée de 30 secondes à, disons, un minute. Même symptômes? 30 Secondes paraissent quand même long pour exécuter "quelques" requetes...
"Triton03" a écrit :
Bonjour, j'essaye de faire un programme pour monitorer des applications diverses. Toutes les 30 secondes (le temps n'a pas besoin du tout d'être précis), je voudrais faire des requêtes dans des tables de log par exemple. J'ai constaté en utilisant le composant Timer (en C#), que le traitement dans le tick du timer ne se finissait pas. Or, mon intervalle étant de 30s, j'ai largement le temps il me semble, de faire mes quelques requêtes.
Est-ce déjà la bonne méthode d'utiliser un timer dans ce cas ? Si oui, est ce quelqu'un a déjà constaté ce genre de pb ? Je trouve pas mal d'infos sur les timers mais toujours pour des traitements très courts dans les ticks.
Dans la version 2.0 du Framework, il existe un composant BackGroundWorker qui
pourrait être intéressant car il permettrait de lancer un nouveau thread qui
ferait les requetes puis afficherait le résultat.
Indépendemment de ça, avez-vous essayé d'augmenter la durée de 30 secondes
à, disons, un minute. Même symptômes?
30 Secondes paraissent quand même long pour exécuter "quelques" requetes...
"Triton03" a écrit :
Bonjour, j'essaye de faire un programme pour monitorer des applications
diverses. Toutes les 30 secondes (le temps n'a pas besoin du tout d'être
précis), je voudrais faire des requêtes dans des tables de log par exemple.
J'ai constaté en utilisant le composant Timer (en C#), que le traitement
dans le tick du timer ne se finissait pas. Or, mon intervalle étant de 30s,
j'ai largement le temps il me semble, de faire mes quelques requêtes.
Est-ce déjà la bonne méthode d'utiliser un timer dans ce cas ? Si oui, est
ce quelqu'un a déjà constaté ce genre de pb ? Je trouve pas mal d'infos sur
les timers mais toujours pour des traitements très courts dans les ticks.
Dans la version 2.0 du Framework, il existe un composant BackGroundWorker qui pourrait être intéressant car il permettrait de lancer un nouveau thread qui ferait les requetes puis afficherait le résultat.
Indépendemment de ça, avez-vous essayé d'augmenter la durée de 30 secondes à, disons, un minute. Même symptômes? 30 Secondes paraissent quand même long pour exécuter "quelques" requetes...
"Triton03" a écrit :
Bonjour, j'essaye de faire un programme pour monitorer des applications diverses. Toutes les 30 secondes (le temps n'a pas besoin du tout d'être précis), je voudrais faire des requêtes dans des tables de log par exemple. J'ai constaté en utilisant le composant Timer (en C#), que le traitement dans le tick du timer ne se finissait pas. Or, mon intervalle étant de 30s, j'ai largement le temps il me semble, de faire mes quelques requêtes.
Est-ce déjà la bonne méthode d'utiliser un timer dans ce cas ? Si oui, est ce quelqu'un a déjà constaté ce genre de pb ? Je trouve pas mal d'infos sur les timers mais toujours pour des traitements très courts dans les ticks.
Triton03
Oui, même à une minute de laps de temps, j'ai les mêmes symptômes. C'est sûr que c très large pour les requêtes, si je les fait indépendammment, elles ne doivent pas prendre plus de 1 ou 2 secondes. Je crois que je vais me rabattre effectivement sur le BackGroundWorker.
Merci
"DVDB" a écrit :
Dans la version 2.0 du Framework, il existe un composant BackGroundWorker qui pourrait être intéressant car il permettrait de lancer un nouveau thread qui ferait les requetes puis afficherait le résultat.
Indépendemment de ça, avez-vous essayé d'augmenter la durée de 30 secondes à, disons, un minute. Même symptômes? 30 Secondes paraissent quand même long pour exécuter "quelques" requetes...
"Triton03" a écrit :
> Bonjour, j'essaye de faire un programme pour monitorer des applications > diverses. Toutes les 30 secondes (le temps n'a pas besoin du tout d'être > précis), je voudrais faire des requêtes dans des tables de log par exemple. > J'ai constaté en utilisant le composant Timer (en C#), que le traitement > dans le tick du timer ne se finissait pas. Or, mon intervalle étant de 30s, > j'ai largement le temps il me semble, de faire mes quelques requêtes. > > Est-ce déjà la bonne méthode d'utiliser un timer dans ce cas ? Si oui, est > ce quelqu'un a déjà constaté ce genre de pb ? Je trouve pas mal d'infos sur > les timers mais toujours pour des traitements très courts dans les ticks.
Oui, même à une minute de laps de temps, j'ai les mêmes symptômes. C'est sûr
que c très large pour les requêtes, si je les fait indépendammment, elles ne
doivent pas prendre plus de 1 ou 2 secondes.
Je crois que je vais me rabattre effectivement sur le BackGroundWorker.
Merci
"DVDB" a écrit :
Dans la version 2.0 du Framework, il existe un composant BackGroundWorker qui
pourrait être intéressant car il permettrait de lancer un nouveau thread qui
ferait les requetes puis afficherait le résultat.
Indépendemment de ça, avez-vous essayé d'augmenter la durée de 30 secondes
à, disons, un minute. Même symptômes?
30 Secondes paraissent quand même long pour exécuter "quelques" requetes...
"Triton03" a écrit :
> Bonjour, j'essaye de faire un programme pour monitorer des applications
> diverses. Toutes les 30 secondes (le temps n'a pas besoin du tout d'être
> précis), je voudrais faire des requêtes dans des tables de log par exemple.
> J'ai constaté en utilisant le composant Timer (en C#), que le traitement
> dans le tick du timer ne se finissait pas. Or, mon intervalle étant de 30s,
> j'ai largement le temps il me semble, de faire mes quelques requêtes.
>
> Est-ce déjà la bonne méthode d'utiliser un timer dans ce cas ? Si oui, est
> ce quelqu'un a déjà constaté ce genre de pb ? Je trouve pas mal d'infos sur
> les timers mais toujours pour des traitements très courts dans les ticks.
Oui, même à une minute de laps de temps, j'ai les mêmes symptômes. C'est sûr que c très large pour les requêtes, si je les fait indépendammment, elles ne doivent pas prendre plus de 1 ou 2 secondes. Je crois que je vais me rabattre effectivement sur le BackGroundWorker.
Merci
"DVDB" a écrit :
Dans la version 2.0 du Framework, il existe un composant BackGroundWorker qui pourrait être intéressant car il permettrait de lancer un nouveau thread qui ferait les requetes puis afficherait le résultat.
Indépendemment de ça, avez-vous essayé d'augmenter la durée de 30 secondes à, disons, un minute. Même symptômes? 30 Secondes paraissent quand même long pour exécuter "quelques" requetes...
"Triton03" a écrit :
> Bonjour, j'essaye de faire un programme pour monitorer des applications > diverses. Toutes les 30 secondes (le temps n'a pas besoin du tout d'être > précis), je voudrais faire des requêtes dans des tables de log par exemple. > J'ai constaté en utilisant le composant Timer (en C#), que le traitement > dans le tick du timer ne se finissait pas. Or, mon intervalle étant de 30s, > j'ai largement le temps il me semble, de faire mes quelques requêtes. > > Est-ce déjà la bonne méthode d'utiliser un timer dans ce cas ? Si oui, est > ce quelqu'un a déjà constaté ce genre de pb ? Je trouve pas mal d'infos sur > les timers mais toujours pour des traitements très courts dans les ticks.
Bill Dez
In article , says...
Oui, même à une minute de laps de temps, j'ai les mêmes symptômes . C'est sûr que c très large pour les requêtes, si je les fait indépendammment, elles ne doivent pas prendre plus de 1 ou 2 secondes. Je crois que je vais me rabattre effectivement sur le BackGroundWorker.
Salut,
Tu utilise un interface graphique je suppose pour monitorer? si c'est le cas, tu utilises aussi des delegates pour rafraichir ton affichage, non? Car si ce n'est pas le cas, ton affichage risque de ne pas de rafraichir...
Autre truc, tu peux aussi utiliser System.Threading.Thread.Sleep(100); ou 100 est le nombre de millisecondes que tu souhaites attendre.
In article <F4939F88-A079-46B7-B692-F4A93BE4DA71@microsoft.com>,
Triton03@discussions.microsoft.com says...
Oui, même à une minute de laps de temps, j'ai les mêmes symptômes . C'est sûr
que c très large pour les requêtes, si je les fait indépendammment, elles ne
doivent pas prendre plus de 1 ou 2 secondes.
Je crois que je vais me rabattre effectivement sur le BackGroundWorker.
Salut,
Tu utilise un interface graphique je suppose pour monitorer? si c'est le
cas, tu utilises aussi des delegates pour rafraichir ton affichage, non?
Car si ce n'est pas le cas, ton affichage risque de ne pas de
rafraichir...
Autre truc, tu peux aussi utiliser System.Threading.Thread.Sleep(100);
ou 100 est le nombre de millisecondes que tu souhaites attendre.
Oui, même à une minute de laps de temps, j'ai les mêmes symptômes . C'est sûr que c très large pour les requêtes, si je les fait indépendammment, elles ne doivent pas prendre plus de 1 ou 2 secondes. Je crois que je vais me rabattre effectivement sur le BackGroundWorker.
Salut,
Tu utilise un interface graphique je suppose pour monitorer? si c'est le cas, tu utilises aussi des delegates pour rafraichir ton affichage, non? Car si ce n'est pas le cas, ton affichage risque de ne pas de rafraichir...
Autre truc, tu peux aussi utiliser System.Threading.Thread.Sleep(100); ou 100 est le nombre de millisecondes que tu souhaites attendre.
Jérôme Bonnet
Le composant Timer convient pour les tâches rapides. Dans ton cas, j'utiliserais BackGroundWorker ou bien un thread quelconque.
Dans la boucle d'execution du thread, je lance ma tache puis je fais patienter XXX secondes grâce à Thread.Sleep . Pour notifier chaque fin d'execution de la tâche, tu peux publier un message grâce à l'évênement ProgressChanged , et ce, en ayant activé la propriété SupportReportProgress à true.
Jerome
"Triton03" a écrit dans le message de news:
Bonjour, j'essaye de faire un programme pour monitorer des applications diverses. Toutes les 30 secondes (le temps n'a pas besoin du tout d'être précis), je voudrais faire des requêtes dans des tables de log par exemple. J'ai constaté en utilisant le composant Timer (en C#), que le traitement dans le tick du timer ne se finissait pas. Or, mon intervalle étant de 30s, j'ai largement le temps il me semble, de faire mes quelques requêtes.
Est-ce déjà la bonne méthode d'utiliser un timer dans ce cas ? Si oui, est ce quelqu'un a déjà constaté ce genre de pb ? Je trouve pas mal d'infos sur les timers mais toujours pour des traitements très courts dans les ticks.
Le composant Timer convient pour les tâches rapides. Dans ton cas,
j'utiliserais BackGroundWorker ou bien un thread quelconque.
Dans la boucle d'execution du thread, je lance ma tache puis je fais
patienter XXX secondes grâce à Thread.Sleep . Pour notifier chaque fin
d'execution de la tâche, tu peux publier un message grâce à l'évênement
ProgressChanged , et ce, en ayant activé la propriété SupportReportProgress
à true.
Jerome
"Triton03" <Triton03@discussions.microsoft.com> a écrit dans le message de
news: 4325B6EE-D9F6-424D-9953-A729F4D64010@microsoft.com...
Bonjour, j'essaye de faire un programme pour monitorer des applications
diverses. Toutes les 30 secondes (le temps n'a pas besoin du tout d'être
précis), je voudrais faire des requêtes dans des tables de log par
exemple.
J'ai constaté en utilisant le composant Timer (en C#), que le traitement
dans le tick du timer ne se finissait pas. Or, mon intervalle étant de
30s,
j'ai largement le temps il me semble, de faire mes quelques requêtes.
Est-ce déjà la bonne méthode d'utiliser un timer dans ce cas ? Si oui, est
ce quelqu'un a déjà constaté ce genre de pb ? Je trouve pas mal d'infos
sur
les timers mais toujours pour des traitements très courts dans les ticks.
Le composant Timer convient pour les tâches rapides. Dans ton cas, j'utiliserais BackGroundWorker ou bien un thread quelconque.
Dans la boucle d'execution du thread, je lance ma tache puis je fais patienter XXX secondes grâce à Thread.Sleep . Pour notifier chaque fin d'execution de la tâche, tu peux publier un message grâce à l'évênement ProgressChanged , et ce, en ayant activé la propriété SupportReportProgress à true.
Jerome
"Triton03" a écrit dans le message de news:
Bonjour, j'essaye de faire un programme pour monitorer des applications diverses. Toutes les 30 secondes (le temps n'a pas besoin du tout d'être précis), je voudrais faire des requêtes dans des tables de log par exemple. J'ai constaté en utilisant le composant Timer (en C#), que le traitement dans le tick du timer ne se finissait pas. Or, mon intervalle étant de 30s, j'ai largement le temps il me semble, de faire mes quelques requêtes.
Est-ce déjà la bonne méthode d'utiliser un timer dans ce cas ? Si oui, est ce quelqu'un a déjà constaté ce genre de pb ? Je trouve pas mal d'infos sur les timers mais toujours pour des traitements très courts dans les ticks.