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

MFC Discussion :

Créer thread autonome continu


Sujet :

MFC

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé
    Profil pro
    Inscrit en
    Juin 2005
    Messages
    499
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France

    Informations forums :
    Inscription : Juin 2005
    Messages : 499
    Par défaut Créer thread autonome continu
    Bonjour,

    je fais une ptite appli MFC
    et j'aurai besoin d'avoir un thread qui tourne en permanence en parallèle d'une acquisition pour récupérer des données
    j'ai essayé de faire un truc tout bête
    on m'a dit d'insérer des Sleep dans la fonction du thread pour donner la main au reste
    mais a priori, ça marche pas :
    pendant que mon thread tourne, je ne peux plus appeler aucune fonction depuis ma boite de dialogue...

    comment faire pour laisser la main au reste de mon appli?...

  2. #2
    Membre émérite Avatar de Jérémy Lefevre
    Homme Profil pro
    Développeur Java
    Inscrit en
    Juin 2004
    Messages
    898
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : Luxembourg

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

    Informations forums :
    Inscription : Juin 2004
    Messages : 898
    Par défaut
    tout depend ou tu execute tes fonctions!! si tu les execute dans ton thread elle vont etre bloqué!
    il faut donc que tu lance le thread de ton appli qui atrape les evenements et un autre thread qui les traitent!

  3. #3
    Rédacteur
    Avatar de farscape
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Novembre 2003
    Messages
    9 055
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

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

    Informations forums :
    Inscription : Novembre 2003
    Messages : 9 055

  4. #4
    Expert confirmé
    Avatar de Mat.M
    Profil pro
    Développeur informatique
    Inscrit en
    Novembre 2006
    Messages
    8 527
    Détails du profil
    Informations personnelles :
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Novembre 2006
    Messages : 8 527
    Par défaut
    Tu peux tenter un truc simple : dans CDialog :: PreTranslateMsg placer

    AfxGetApp()->PumpMessage();

    sinon prendre l'exemple de la FAQ par Farscape

  5. #5
    Membre éclairé
    Profil pro
    Inscrit en
    Juin 2005
    Messages
    499
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France

    Informations forums :
    Inscription : Juin 2005
    Messages : 499
    Par défaut
    ok ok,
    je vais voir avec tout ça,
    merci

  6. #6
    Membre éclairé
    Profil pro
    Inscrit en
    Juin 2005
    Messages
    499
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France

    Informations forums :
    Inscription : Juin 2005
    Messages : 499
    Par défaut
    eh dites...
    comment je fais pour attraper les évènements de ma boite de dialogue (les clics sur les boutons...) depuis le thread?
    et après, il faut que je définisse des messages pour les traiter?

  7. #7
    Membre éclairé
    Profil pro
    Inscrit en
    Juin 2005
    Messages
    499
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France

    Informations forums :
    Inscription : Juin 2005
    Messages : 499
    Par défaut
    au secours!
    je ne m'en sors pas...

    comme les fonctions de controle de thread doivent être static
    je galère...

    mon appli fait de l'acquistion de données,
    je veux faire un thread qui récupère les données en continu
    je veux le lancer quand je fais start
    et l'arrêter quand je fais stop

    donc j'ai défini une variable AcquisitionEnCours que je me mets à true dans le start avant de lancer le thread avec AfxBeginThread et je voudrais la mettre à false dans le stop pour arrêter le thread...
    et je voulais faire un while(AcquisitionEnCours) dans le thread...

    mais je n'ai pas accès aux variables de l'appli dans la fonction du thread...

    et puis j'aimerais bien avoir accès (via un bouton) à une fonction qui, au cours de l'acquisition, affiche les données récupérées dans le thread

    si vous avez des solutions...
    merci

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Lancer un thread en continu
    Par padej450 dans le forum ASP.NET
    Réponses: 5
    Dernier message: 19/07/2010, 16h54
  2. Réponses: 10
    Dernier message: 07/03/2007, 18h46
  3. créer Thread et synchronisation C et VB
    Par storm_2000 dans le forum Général Dotnet
    Réponses: 1
    Dernier message: 20/01/2007, 12h49
  4. Créer Thread avec nouvelle console ? API Windows ?
    Par TimerMan dans le forum Windows
    Réponses: 4
    Dernier message: 26/11/2006, 23h27
  5. [Threads] Actions continues avec des threads
    Par MiJack dans le forum Concurrence et multi-thread
    Réponses: 6
    Dernier message: 10/10/2005, 17h32

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