У меня есть сомнения относительно синхронизации Java. Я хочу знать, есть ли у меня три синхронизированных метода в моем классе, и поток получает блокировку в одном синхронизированном методе, два других будут заблокированы? Я задаю этот вопрос, потому что меня смущает следующее утверждение.
Пока поток находится внутри синхронизированного метода объекта, все остальные потоки, желающие выполнить этот синхронизированный метод или любой другой синхронизированный метод объекта, должны будут ждать. Это ограничение не распространяется на поток, который уже имеет блокировку и выполняет синхронизированный метод объекта. Такой метод может вызывать другие синхронизированные методы объекта без блокировки. Конечно, несинхронизированные методы объекта могут быть вызваны в любое время любым потоком.