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