Effective Java - Avoid excessive synchronization

這個Item的宗旨如字面上的意思:「避免過度的使用同步」。這個Item有以下幾個重點:

  • 有使用synchronized控制的method,不要讓client有機會override以避免liveness與safety failures。
  • synchronized block中,為了效能著想,工作越少越好。
  • 善用同步的方法,沒有需要就不要用。

Effective Java第三版Item 79。

  • Effective Java, 3/e