Juste curieux de savoir (avec autant de détails que possible), pourquoi est-il une mauvaise pratique à modifier l'objet tout en l'utilisant comme un verrou.Mutation d'un objet de verrouillage
//Assuming the lockObject is globally available
synchronized(lockObject){
lockObject.someMutativeOperation(...);
}
Vive
Le but est d'empêcher les blocages - d'autres classes peuvent être synchronisées sur "l'objet lui-même", à votre insu. –