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

SWT/JFace Java Discussion :

[SWT] Lancement d'un thread accedant à des ressouces SWT lors de la fermeture de l'ap


Sujet :

SWT/JFace Java

  1. #1
    Membre actif
    Profil pro
    Inscrit en
    Janvier 2007
    Messages
    20
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2007
    Messages : 20
    Par défaut [SWT] Lancement d'un thread accedant à des ressouces SWT lors de la fermeture de l'ap
    Voila, je travail sur une application eclipse rcp.

    J'ai besoin d'acceder à des ressources swt via un thread. Le probleme se pose lorsque je ferme l'application, alors qu'un thread modifie ces ressources. J'obtiens une jolie exception org.eclipse.swt.SWTException: Widget is disposed.

    Le bout de code qui pause probleme est le suivant :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    display.syncExec(new Runnable()
    			{
    				public void run()
    				{
                                          //Mon traitement
    				}
    			});
    Je ne vois pas de quel façon empecher cette exception.
    (en agrementant ce bout de code d'un if (!display.isDisposed()), ça ne change rien).

    Merci à vous

  2. #2
    Membre expérimenté

    Profil pro
    Inscrit en
    Août 2006
    Messages
    218
    Détails du profil
    Informations personnelles :
    Âge : 50
    Localisation : France, Rhône (Rhône Alpes)

    Informations forums :
    Inscription : Août 2006
    Messages : 218
    Par défaut
    Bonjour,

    A mon avis, il faut rajouter le test isDisposed() dans le code de ta section "Run", par exemple


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
     display.syncExec(new Runnable()
                {
                    public void run()
                    {
                     // Ici
                     if (!composite.isDisposed()) {
                          composite.update();
                     }
                    }
                });
     
    Laurent

  3. #3
    Membre actif
    Profil pro
    Inscrit en
    Janvier 2007
    Messages
    20
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2007
    Messages : 20
    Par défaut
    J'ai deja un test sur display, et sur le composite que je vais modifier, mais si le test n'est pas fait au bon moment, ça passe pas.

  4. #4
    Membre expérimenté

    Profil pro
    Inscrit en
    Août 2006
    Messages
    218
    Détails du profil
    Informations personnelles :
    Âge : 50
    Localisation : France, Rhône (Rhône Alpes)

    Informations forums :
    Inscription : Août 2006
    Messages : 218
    Par défaut
    Peux-tu poster le code ou me l'envoyer en PJ à l'adresse laurent.caron [chez] gmail [point] com ?

    Je regarderais

    Laurent

Discussions similaires

  1. [Astuce][Thread]Utilisation des blocs synchronized
    Par Pill_S dans le forum Concurrence et multi-thread
    Réponses: 14
    Dernier message: 21/07/2004, 14h14
  2. Réponses: 3
    Dernier message: 11/02/2004, 12h50
  3. [Tomcat][Servlet] créer et acceder à des fichier du localhos
    Par djodjo dans le forum Tomcat et TomEE
    Réponses: 2
    Dernier message: 12/01/2004, 17h30
  4. [SWT] Un bon coin ou trouver des infos pratik
    Par yolepro dans le forum SWT/JFace
    Réponses: 8
    Dernier message: 04/12/2002, 14h08

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