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

GTK+ avec C & C++ Discussion :

[Débutant] Calculer en parallèle avec GTK


Sujet :

GTK+ avec C & C++

  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Juillet 2005
    Messages
    120
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2005
    Messages : 120
    Par défaut [Débutant] Calculer en parallèle avec GTK
    Bonjour, je commence à peine à toucher GTK et déjà je rencontres des difficultés. Je n'arrive pas à exécuter mon code en même temps que l'affichage de mes fenêtre. En gros, je travaille sur un projet de reconnaissance d'objets et l'apprentissage peut parfois prendre du temps. J'ai donc décidé de créer une barre de progression avec GTK.
    Supposons que la fonction que je lance pour exécuter mon code soit "mon_code();" et que dans cette fonction je fais appel à gtk_progress_bar_pulse(). Deux cas de figures se présentent :
    Si j'appelle mon_code avant gtk_main, on ne voit rien à l'écran jusqu'à ce que la fonction mon_code termine son exécution.
    Si j'appelle mon_code apr_s gtk_main, ben en fait, gtk_main est bloquant donc ca ne fait rien du tout.

    En cherchant je suis tombé sur le fonction gtk_init_add mais en utilisant cette fonction, c'est comme si je lancais mon_code avant gtk_main.

  2. #2
    Membre confirmé
    Profil pro
    Inscrit en
    Juillet 2005
    Messages
    120
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2005
    Messages : 120
    Par défaut
    euh... c'est vraiment si compliqué que ca ? parce que si ca l'est, je le fais avec QT. Le problème c'est que les autotools sont assez chiants à mettre en place pour prendre en compte QT.

  3. #3
    Membre Expert
    Homme Profil pro
    Inscrit en
    Janvier 2005
    Messages
    1 259
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Janvier 2005
    Messages : 1 259
    Par défaut
    C'est normal que ça fasse ça, c'est tout le principe de la programmation évènementielle... Ca risque d'être exactement pareil avec QT... gtk_main() lance la boucle principale de gtk+, qui ensuite appelle les callbacks que tu lui auras indiqués en réponse aux évènements causés par l'utilisateur

  4. #4
    Rédacteur
    Avatar de Franck.H
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Janvier 2004
    Messages
    6 951
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : France, Haut Rhin (Alsace)

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : Service public

    Informations forums :
    Inscription : Janvier 2004
    Messages : 6 951
    Par défaut
    Peut-être créer un thread supplémentaire pour exécuter ton code en parallèle, voir: http://library.gnome.org/devel/glib/...b-Threads.html
    Mon Site
    Ma bibliothèque de gestion des chaînes de caractères en C

    L'imagination est plus importante que le savoir. A. Einstein

    Je ne répond à aucune question technique par MP, merci d'avance !

  5. #5
    Membre Expert
    Homme Profil pro
    Inscrit en
    Janvier 2005
    Messages
    1 259
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Janvier 2005
    Messages : 1 259
    Par défaut
    Citation Envoyé par Franck.H Voir le message
    Peut-être créer un thread supplémentaire pour exécuter ton code en parallèle,
    C'est chercher les problèmes de mélanger gtk+ et les threads

  6. #6
    Rédacteur
    Avatar de Franck.H
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Janvier 2004
    Messages
    6 951
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : France, Haut Rhin (Alsace)

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : Service public

    Informations forums :
    Inscription : Janvier 2004
    Messages : 6 951
    Par défaut
    Citation Envoyé par teuf13 Voir le message
    C'est chercher les problèmes de mélanger gtk+ et les threads
    Bin y'a peut-être pas trop le choix pour exécuter un code en parallèle au thread principal (main) non ?
    Mon Site
    Ma bibliothèque de gestion des chaînes de caractères en C

    L'imagination est plus importante que le savoir. A. Einstein

    Je ne répond à aucune question technique par MP, merci d'avance !

  7. #7
    Membre Expert
    Homme Profil pro
    Inscrit en
    Janvier 2005
    Messages
    1 259
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Janvier 2005
    Messages : 1 259
    Par défaut
    Y a peut être moyen de retravailler le code pour bosser avec des g_idle_add, sinon ya toujours la solution d'itérer manuellement la main loop, ... Pour moi les threads, c'est une solution de dernier recours, ou sinon faut montrer qu'on sait vraimetn ce qu'on fait

  8. #8
    Membre confirmé
    Profil pro
    Inscrit en
    Juillet 2005
    Messages
    120
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2005
    Messages : 120
    Par défaut
    bon ben merci pour ces réponses, je suis en train de m'arranger pour basculer entre Interface et Mon code en mettant en place des barres de progression. Donc ca devrait aller pour ce problème

Discussions similaires

  1. [Débutant] Calcul avec le complexe j
    Par ripans32 dans le forum MATLAB
    Réponses: 2
    Dernier message: 11/03/2007, 18h49
  2. Calcul Avec Gtk
    Par LE CORRE dans le forum GTK+ avec C & C++
    Réponses: 24
    Dernier message: 27/02/2007, 21h27
  3. [Débutant] SWT: composant Texte avec \n
    Par bonnefr dans le forum SWT/JFace
    Réponses: 3
    Dernier message: 18/05/2004, 11h44
  4. [débutant] choix de postgre avec php / migration
    Par bilbon.S dans le forum PostgreSQL
    Réponses: 3
    Dernier message: 23/03/2004, 14h05
  5. [GTK]installer Dev-C++ avec gtk 1.2 ...
    Par vbcasimir dans le forum Dev-C++
    Réponses: 2
    Dernier message: 02/02/2004, 13h34

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