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

GUI Python Discussion :

IHM qui freeze lors d'utilisation subprocess


Sujet :

GUI Python

Mode arborescent

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Expert confirmé

    Avatar de deusyss
    Homme Profil pro
    Expert Python
    Inscrit en
    Mars 2010
    Messages
    1 659
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Expert Python
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mars 2010
    Messages : 1 659
    Par défaut IHM qui freeze lors d'utilisation subprocess
    Bonjour à tous,

    Je suis en train de travailler sr la V2.0.0 de mon logiciel Open Source PYXMAKER.

    Je suis confronté à un petit soucis pour lequel je n'ai pas vraiment trouvé de solution et pour lequel je sollicite votre aide.

    Ce logiciel permet d'automatiser et simplifier la generation de standalone windows et de setup d'install, via IHM, à partir de code source python via un interfacage avec cx_freeze et inno setup.

    Tout se passe de manière graphique, plus de script à créer. Lors de la validation (bouton du dernier ecran, puis bouton de la fenetre pop up qui suit), l'IHM se fige.

    Lors de cette validation, j'appelle une fonction qui fait d'abord appel à cx_freeze, puis à inno setup. Pour ces appels, j'utilise subprocess.popen. Pour etre sur que ces taches s'exécute de manière procedurale, j'utilise egalement un subprocess.wait.

    Le probleme est que cela freeze mon IHM, normal me direz vous, on attend la fin de l'execution des commande avant de rendre la main à l'IHM.

    La solution est d'appeler cette fonction dans un thread séparé de mon thread normal, puis de capturer la fin de ce thread parallele afin d'avertir l'utilisateur.

    Jusqu'ici je n'ai pas reussi (utiliser de threading.thread), d'ou ce post.

    Les sources sont en PJ, si certaines personnes veulent regarder de plus près. J'ai également joint un autre de mes logiciels pour avoir un exemple de sources compatibles (un certains formalisme est obligatoire pour que pyxmaker fonctionne).

    Merci beaucoup d'avance.

    EDIT: l'appel se fait dans ihm_pyxmaker.py, aux alentour de la ligne 1690 (rtr = ...)
    Fichiers attachés Fichiers attachés

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

Discussions similaires

  1. Thread qui freeze lors des breakpoints.
    Par zeguiz dans le forum VB.NET
    Réponses: 3
    Dernier message: 18/01/2012, 17h22
  2. Réponses: 5
    Dernier message: 30/04/2007, 15h32
  3. Message d'erreur lors d'utilisation d'un Objet
    Par dirty_boy dans le forum Langage
    Réponses: 3
    Dernier message: 28/10/2005, 16h16
  4. récupérer l' IP du client lors d'utilisation de sockets
    Par zegota dans le forum Entrée/Sortie
    Réponses: 7
    Dernier message: 27/07/2005, 22h27
  5. Ou trouver les informations qui defile lors du boot ?
    Par piff62 dans le forum Administration système
    Réponses: 2
    Dernier message: 17/03/2005, 17h19

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