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

Java Discussion :

[Thread]Savoir si un thread s'est bien terminé.


Sujet :

Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre émérite
    Profil pro
    Architecte technique
    Inscrit en
    Mars 2002
    Messages
    966
    Détails du profil
    Informations personnelles :
    Âge : 52
    Localisation : France

    Informations professionnelles :
    Activité : Architecte technique

    Informations forums :
    Inscription : Mars 2002
    Messages : 966
    Par défaut [Thread]Savoir si un thread s'est bien terminé.
    Bonjour à tous,

    Je voudrais avoir des conseils pour le problème suivant.

    J'ai crée une interface graphique, qui quand on appui sur un bouton valider lance un traitement assez long (ganération d'un fichier PDF). Or pour que l'interface ne se gêle pas, j'ai mis la génération de ce fichier dans un Thread lancé depuis l'interface graphique.

    Or il peut arriver que la génération de se fichier se passe mal (le fichier xml ou xsl-fo n'est pas trouvé par exemple). Donc je voudrais afficher le status de la génération dans un JTextField de mon interface. Or le problème est que je dois savoir si le Thread lancé par mon interface s'est terminé correctement.

    Alors comme dois-je procéder ?

    Merci pour vos conseils.

  2. #2
    Membre confirmé
    Profil pro
    Inscrit en
    Octobre 2004
    Messages
    77
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2004
    Messages : 77
    Par défaut
    Le plus propre je crois est d'utiliser un listener.

    En gros, ton interface écoute le traitement du Thread qui l'informe de son execution.

  3. #3
    Membre émérite
    Profil pro
    Architecte technique
    Inscrit en
    Mars 2002
    Messages
    966
    Détails du profil
    Informations personnelles :
    Âge : 52
    Localisation : France

    Informations professionnelles :
    Activité : Architecte technique

    Informations forums :
    Inscription : Mars 2002
    Messages : 966
    Par défaut
    Mais existe t-il déjà des listeners de Thread ?

  4. #4
    Membre confirmé
    Profil pro
    Inscrit en
    Octobre 2004
    Messages
    77
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2004
    Messages : 77
    Par défaut
    Citation Envoyé par thibaut
    Mais existe t-il déjà des listeners de Thread ?
    Tu fais ton propre Listener :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
     
    public class MonPanneau implements MyConversionListener {
     
       // ....
     
      private void lancerConversion() {
         ConversionHandler h = new ConversionHandler(this);
         new Thread ... {
            h.lanceConversion();
         }
      }
     
      public void maConversionEstFinie() {
         monTextField.setText("Conversion terminée");
      }
     
    }
    Et ton ConversionHandler prends en paramètre un MyConversionListener qu'il informe lorsque la conversion est terminée.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    public interface MyConversionListener {
       public void maConversionEstFinie(); 
    }
    C'est plus clair ?

  5. #5
    Membre émérite
    Profil pro
    Architecte technique
    Inscrit en
    Mars 2002
    Messages
    966
    Détails du profil
    Informations personnelles :
    Âge : 52
    Localisation : France

    Informations professionnelles :
    Activité : Architecte technique

    Informations forums :
    Inscription : Mars 2002
    Messages : 966
    Par défaut
    C'est bon j'ai trouvé, la solution, il suffit de passer la référénce à mon JTextField dans mon Thread...

    Merci à tous

  6. #6
    Membre confirmé
    Profil pro
    Inscrit en
    Octobre 2004
    Messages
    77
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2004
    Messages : 77
    Par défaut
    Citation Envoyé par thibaut
    C'est bon j'ai trouvé, la solution, il suffit de passer la référénce à mon JTextField dans mon Thread...

    Merci à tous
    C'est pas très propre comme solution, avec un listener tu peux utiliser ta conversion à plusieurs endroits, là ce n'est pas le cas.

    N'oublies pas de marquer résolu ce thread.

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

Discussions similaires

  1. Comment savoir si une requete c'est bien passé
    Par choubak dans le forum Requêtes et SQL.
    Réponses: 2
    Dernier message: 04/07/2007, 15h26
  2. Réponses: 6
    Dernier message: 12/09/2006, 11h08
  3. [Threads] Savoir si un thread a provoqué une erreur
    Par anykeyh dans le forum Windows
    Réponses: 6
    Dernier message: 26/04/2006, 15h12
  4. [JDBC] Savoir si un INSERT s'est bien effectué
    Par david71 dans le forum JDBC
    Réponses: 5
    Dernier message: 16/02/2005, 12h06
  5. Comment savoir si une impression s'est bien déroulé?
    Par Cyrilh7 dans le forum C++Builder
    Réponses: 5
    Dernier message: 19/11/2003, 20h49

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