由于字符串常量池的原因不同的变量可能引用着同一个对象,锁不同变量的时候会锁成同一个对象,从而造成意料之外的同步,降低效率
一个线程拿到字符串类型的锁之后,其他线程虽然锁的字符串不同,但字符串常量池具有缓存,不同字符串变量指向同一个字符串,其他线程永远拿不到锁。
由于字符串常量池的原因不同的变量可能引用着同一个对象,锁不同变量的时候会锁成同一个对象,从而造成意料之外的同步,降低效率
一个线程拿到字符串类型的锁之后,其他线程虽然锁的字符串不同,但字符串常量池具有缓存,不同字符串变量指向同一个字符串,其他线程永远拿不到锁。