Bonjour tlm,
dans le cadre d'une application scolaire, je dois réalisé un chat en java. Pour se faire, je dispose donc de mon serveur multi threading et des clients.
Pour transmettre des messages d'un client a l'autre, j'ai donc été obligé de déclarer un vector en static dans mes threads afin que le tout soit connu par chaque thread.
Donc en faite, chaque élément du vector est attribué a un client et sert de mémoire tempons pour récupérer les messages qu'il n'a pas encore été lire.
Code : Sélectionner tout - Visualiser dans une fenêtre à part static Vector<String> buffer_message = new Vector <String>();
C'est pourquoi, dans mon code, je désire utiliser l'instruction suivante :
Message étant un String et i un entier qui représente l'élément. J'ai vérifier la valeur de i et de message avec un System.out.println juste avant l'instruction, et apres l'instruction, je vérifie le contenu de buffer_message.elementAt(i).
Code : Sélectionner tout - Visualiser dans une fenêtre à part buffer_message.elementAt(i).concat(message);
Mais la, la valeur reste toujours inchangé. La seul explication qui me viendrait a l'esprit, serait a cause de static que je suis obligé de laisser a cause de mes threads.
Savez vous comment je pourrais faire pour réussir a modifier le contenu de ce vector de string ?
Je vous remercie d'avance.
Partager