1. Другой способ реализации
синхронизированный: объектно-зависимый, используйте объектный монитор, такой как monitorenter и monitorexit
ReentrantLock: используйте небезопасный класс, такой как метод парковки и разгрузки
2. Производительность
производительность синхронизированного VS ReentrantLock, как показано ниже (см. Повышение производительности Contended Java Монитор от JDK 6 до 9 ), почему синхронизированный всегда имеет худшую производительность?