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

  FORUM HardWare.fr
  Programmation
  Java

  adressage des Listener et autres Observer ...

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

adressage des Listener et autres Observer ...

n°1043339
TheRom_S
Posté le 11-04-2005 à 19:01:20  profilanswer
 

Salut,
 
je voudrais savoir s'il existe déja un moyen pour adresser un observateur en particulier parmis plusieurs.
Je ne parles pas ici de refaire un Observer en ajoutant un équivalent d'adresse dans l'appel dans le genre notifyObserver(address,arg) mais bien d'une solution qui existerait déja.
Sinon, si vous connaissez un autre moyen de faire communiquer des classes ou plutot des threads ... (mis à part le command pattern ou une adaptation à l'envoi de message)


---------------
The Rom's, à votre service
mood
Publicité
Posté le 11-04-2005 à 19:01:20  profilanswer
 

n°1044244
TheRom_S
Posté le 12-04-2005 à 14:38:30  profilanswer
 

UP :)
toujours pas d'idée ? ou même pour récuperer une instance d'une classe sans la connaitre à l'avance (c'est pour pas la passer comme argument dans tous mes constructeurs ...)


---------------
The Rom's, à votre service
n°1044327
nraynaud
lol
Posté le 12-04-2005 à 15:11:42  profilanswer
 

pour faire communiquer des threads, on envoie des messages dans des files d'attente, et on les exécute avec un pattern command.


---------------
trainoo.com, c'est fini
n°1044374
TheRom_S
Posté le 12-04-2005 à 15:40:52  profilanswer
 

wé c'est a peu près ce à quoi j'avais pensé sauf que :
si 2 threads sont sensés communiquer alternativement (si ils sont identiques, la comm se produit en double par ex), le command pattern risque de bloquer l'exec du thread adressé puisqu'en suite, tout découle des instructions de la première commande (à moins de rajouter des yield ou des wait dedans)
bref n'est-il pas mieux alors de faire un truc ds le genre

Code :
  1. public void run() {
  2.    while(!stop) {
  3.       message=recup(pool); // ou equiv
  4.       decode(message);
  5.       yield();
  6.    }
  7. }
  8. private void decode(Message mess) {
  9.    ...
  10.    pool.depose(new Message(...));
  11.    // rien d'autre après pour laisser les autres threads avoir la main
  12. }


bon je precise que je maitrise pas encore la concurrence et l'attribut synchronized donc je me pose peut-etre de fausses questions  :??:


Message édité par TheRom_S le 12-04-2005 à 15:41:51

---------------
The Rom's, à votre service
n°1044376
nraynaud
lol
Posté le 12-04-2005 à 15:42:30  profilanswer
 

je ne comprends pas ta remarque.
 
par contre une chose est sûre, ce système fonctionnne.


---------------
trainoo.com, c'est fini
n°1044401
TheRom_S
Posté le 12-04-2005 à 15:52:51  profilanswer
 

oui la remarque c'est pour dire que si le premier thread adresse le second au moyen d'un command pattern, ce qui se résume à peu près à :
dans le thread1 : thread2.action(...);
là le thread2 ne reprends pas la main pour l'execution de son run() à moins de glisser judicieusement des yield() au bon endroit
dans le cas d'échanges nombreux et complexes, je sens que ca va vite devenir une grosse embrouille de faire comme ca ...


---------------
The Rom's, à votre service
n°1044507
nraynaud
lol
Posté le 12-04-2005 à 16:43:58  profilanswer
 

oulà, ce sont les opération d'insertion et de retrait de la file qui sont exclusives, pas les opérations d'exécution.


---------------
trainoo.com, c'est fini

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

  adressage des Listener et autres Observer ...

 

Sujets relatifs
[java]listener de modificationUtilisation d'adressage ip
action listener d'un bouton utilisé dans une autre classe[Java] [LeJOS] Probleme de Listener en parallèle
[awt/swing][résolu] listener sur ALT ou CTRL uniquementrecuperer des variables de session lors du timeout par un listener
Listener sur des en tetes d'une JTable et modification de ceux-ciListener sur une liste de JButton
[java] Fréquence des itérations dans un Listener[Compression DivX En Système Répartis] Multiple thread listener ?
Plus de sujets relatifs à : adressage des Listener et autres Observer ...


Copyright © 1997-2025 Groupe LDLC (Signaler un contenu illicite / Données personnelles)