IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Windows Discussion :

Flags CreateTimerQueueTimer ?


Sujet :

Windows

  1. #1
    Membre habitué Avatar de tintin72
    Profil pro
    Inscrit en
    Septembre 2003
    Messages
    663
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2003
    Messages : 663
    Points : 177
    Points
    177
    Par défaut Flags CreateTimerQueueTimer ?
    Bonjour,

    Dans mon appli j'utilise timeSetEvent pour appeler une fonction callback
    de façon périodique.
    Mais, je viens de voir sur MSDN que timeSetEvent était obsolete
    et qu'il valait mieux maintenant utiliser CreateTimerQueueTimer.
    J'ai donc procédé au remplacement en regardant les exemples et explications
    sur MSDN mais il reste quelques points obscurs.

    1 - Puisque je n'ai qu'une seule fonctions à appeler, je n'utilise pas
    CreateTimerQueue et je met directement le 2eme argument de CreateTimerQueueTimer à NULL.
    Est ce que c'est une bonne façon de procéder ou vaudrait-il mieux quand même créé une queue pour le timer ?

    2 - Sachant que ma fonction callback (asynchrone) doit être appelé toutes les 2/3 ms et que sa tâche peut être plus ou moins longue selon l'état de certaines variables, je voudrais savoir quel flag serait le plus judicieux:

    WT_EXECUTEDEFAULT
    WT_EXECUTEINTIMERTHREAD
    WT_EXECUTEINPERSISTENTTHREAD
    WT_EXECUTELONGFUNCTION

    Je pencherais pour WT_EXECUTEINTIMERTHREAD mais je ne suis vraiment
    pas sûr.
    Quelqu'un pourrait-il m'aider ?

    Merci

  2. #2
    Expert éminent sénior
    Avatar de Médinoc
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Septembre 2005
    Messages
    27 369
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2005
    Messages : 27 369
    Points : 41 519
    Points
    41 519
    Par défaut
    Toutes les 2/3 millisecondes ?
    Je ne suis pas sûr que Windows puisse faire ça, sachant que la précision de fonctions comme Sleep() tourne autour de 15ms...
    SVP, pas de questions techniques par MP. Surtout si je ne vous ai jamais parlé avant.

    "Aw, come on, who would be so stupid as to insert a cast to make an error go away without actually fixing the error?"
    Apparently everyone.
    -- Raymond Chen.
    Traduction obligatoire: "Oh, voyons, qui serait assez stupide pour mettre un cast pour faire disparaitre un message d'erreur sans vraiment corriger l'erreur?" - Apparemment, tout le monde. -- Raymond Chen.

  3. #3
    Membre habitué Avatar de tintin72
    Profil pro
    Inscrit en
    Septembre 2003
    Messages
    663
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2003
    Messages : 663
    Points : 177
    Points
    177
    Par défaut
    Dans mon appli qui utilise timeSetEvent la période est définit
    à 5 ms. Apparemment ça fonctionne bie. Bon c'est sûr il
    faudrait utiliser un prog de test pour s'assurer que la fonction
    est effectivement bien appelée toutes les 5 ms.

Discussions similaires

  1. [MFC] Flags sur OnKeyDown
    Par nico-pyright(c) dans le forum MFC
    Réponses: 5
    Dernier message: 03/10/2005, 10h00
  2. Réponses: 1
    Dernier message: 11/09/2005, 02h04
  3. [Débutant]Fonction avec des flags
    Par @r$£~%[ dans le forum C++
    Réponses: 10
    Dernier message: 22/08/2005, 10h19
  4. [langage] Flags et listes
    Par claire14pb dans le forum Langage
    Réponses: 22
    Dernier message: 23/05/2005, 22h54
  5. Flags ??
    Par foussa dans le forum Assembleur
    Réponses: 21
    Dernier message: 19/10/2002, 18h36

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo