Bonjour,

J'ai un serveur RMI qui expose un objet contenant un message, que les clients peuvent modifier et récupérer.

Je lance 100 threads clients qui font ceci :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
        for(int i=0;i<100;i++){
        	HelloInterface hello = (HelloInterface) Naming.lookup("//127.0.0.1/Hello");
        	synchronized (hello) {
            	hello.setMessage(getName());
            	System.out.println (getName()+" : "+hello.getMessage());
	        }
 
      }
Et là je m'apperçois que le bloc synchronizé ne marche pas. En effet j'ai des sorties de ce genre :

Thread-45 : Thread-52
Thread-18 : Thread-52
Thread-52 : Thread-52
Thread-45 : Thread-45
Ce qui signifie que la synchronisation ne se passe pas comme prévu.

Ma question est simple : comment gérer la synchronisation avec RMI ??