Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1546 connectés 

  FORUM HardWare.fr
  Programmation
  Java

  [RESOLU] Probleme synchro thread

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

[RESOLU] Probleme synchro thread

n°1835226
lezert
Posté le 07-01-2009 à 17:31:03  profilanswer
 

Bonjour,
 
Je voudrais sa voir si quelqu'un pouvais me dire d'où viens l'erreur suivante svp ?
 
Exception in thread "Thread-2" java.util.ConcurrentModificationException
 at java.util.LinkedList$ListItr.checkForComodification(Unknown Source)
 at java.util.LinkedList$ListItr.next(Unknown Source)
 at Distrib.Distributeur.run(Distributeur.java:105)

 
Voila le code en question:
 

Code :
  1. public void run()
  2. {
  3.  while(true)
  4.  {
  5.   if(!this.etat.getType().equals("occupe" ))
  6.   {
  7.    System.out.println("Mise à jour des comptes effectués du distributeur " + numero);
  8.    // Mise à jour de l'état des cartes bancaires invalide
  9.    liste_cb_invalides.clear();
  10.    // Recuperer la liste des carte bancaires de tous les comptes
  11.    for(CompteClient.Client c: banque.getListeClient())    ----> Erreur à ce niveau ligne 105 comme le dit le message
  12.    {
  13.     for(CompteClient.Compte cpt: c.getListeCompte())
  14.     {
  15.         if(cpt.getCb().getEtat().equals("invalide" ))
  16.         {
  17.          liste_cb_invalides.add(cpt.getCb());
  18.         }
  19.     }
  20.    }
  21.    try {
  22.     this.sleep(5000+numero);
  23.    } catch (InterruptedException e) {e.printStackTrace();}
  24.   }
  25.  }
  26. }


 
Merci d'avance pour votre aide.


Message édité par lezert le 08-01-2009 à 22:07:57
mood
Publicité
Posté le 07-01-2009 à 17:31:03  profilanswer
 

n°1835237
Taiche
(╯°□°)╯︵ ┻━┻
Posté le 07-01-2009 à 17:43:30  profilanswer
 

On a pas assez d'infos sur ton code, mais d'après la stack trace, y a un problème d'accès concurrent [:petrus75] Donc t'essaies de lire dans ta liste alors que celle-ci est déjà utilisée ailleurs par un autre thread.
Renseigne-toi sur le multi-threading, notamment sur les problèmes de synchronisation.


---------------
Everyone thinks of changing the world, but no one thinks of changing himself  |  It is the peculiar quality of a fool to perceive the faults of others and to forget his own  |  Early clumsiness is not a verdict, it’s an essential ingredient.
n°1835252
masklinn
í dag viðrar vel til loftárása
Posté le 07-01-2009 à 18:26:20  profilanswer
 

Taiche a écrit :

t'essaies de lire dans ta liste alors que celle-ci est déjà utilisée ailleurs par un autre thread.


Modifiée, surtout :o


---------------
Stick a parrot in a Call of Duty lobby, and you're gonna get a racist parrot. — Cody
n°1835813
lezert
Posté le 08-01-2009 à 22:07:07  profilanswer
 

Merci pour votre aide.
Après quelques longues recherches sur internet, j'ai trouvé la solution Il m'a suffit d'utilisé le mot clé synchronisez sur ma fonction getClient !!!
Encore Merci


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  Java

  [RESOLU] Probleme synchro thread

 

Sujets relatifs
[Résolu][C] probleme avec une macroProblème à centrer une image [RESOLU]
[résolu] Pb d'url avec des caractères spéciauxBalise Object probleme IE
[SGBD/SQL] probleme d'espace oracle8iprobleme avec un combobox
[ACCESS] Problème requête et valeur par défautlecture de contenu de plusieurs fichiers [résolu]
Plus de sujets relatifs à : [RESOLU] Probleme synchro thread


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR