Je suis en train d'étudier la synchronisation et le verrou d'objet dans un bouquin quand tout à coup j'ai pensé à quelque chose qui n'était pas expliqué et vous pourrez peut-être m'aider à satisfaire ma curiosité :
On sait qu'un Thread pose un verrou sur un objet lorsqu'il invoque une de ses méthodes synchronisée et les autres Threads doivent attendre que le verrou soit levé pour pouvoir accéder à cet objet.
Maintenant imaginez que dans la méthode synchronisé invoqué soit invoqué une méthode synchronisée d'un autre objet ; bien entendu le Thread demande un verrou sur ce second objet.
Cependant, si ce second objet est déjà verrouillé par un Thread qui attend la levée du verrou du premier objet, est-ce que les deux Threads vont se bloquer indéfiniment ou est-ce que la JVM a prévu ce cas de figure et qu'un mécanisme pour sortir de cette situation vaseuse existe ?

 

 
		
		 
         
 

 
			
			

 
			 
   
 


 Les Threads et la synchronisation
 Les Threads et la synchronisation
				 Répondre avec citation
  Répondre avec citation
 
   Envoyé par T`lash
 Envoyé par T`lash
					
 
			
 
				 
 
 
			

 
			
Partager