Ta notion de ce qu'est une méthode synchronized est fausse
Une méthode synchronized garanti simplement que quand on l'exécute sur un objet, aucune autre méthode synchronized ne pourra être utilisée *sur le même objet*. Le but étant de prévenir des accès concurrents sur un même objet, avec notamment des modifications sur l'état d'un objet qui feraient bugger une autre méthode (par exemple, sur une liste si tu retires des objets alors qu'une autre méthode est en train de la parcourir, tu peux prendre un risque de tomber sur un index hors limite).
Par conséquent, si ta méthode s'applique sur des objets différents, ce n'est pas près de marcher ^^
Partager