Можно применять как модификатор метода, и как самостоятельный оператор с блоком кода. Выполняет код при захваченном мониторе объекта. В виде оператора объект указывается явно. В виде модификатора нестатического метода используется
this
, статического – .class
текущего класса.Один из основных инструментов обеспечения потокобезопасности. Одновременно выполняется не более одного блока
synchronized
на одном и том же объекте. Такая блокировка называется intrinsic lock или monitor lock, подробно рассматривается в Java Concurrency in Practice 2.3.1.Блок
synchronized
также необходим для использования методов wait, notify, notifyAll.#Язык
#Многопоточность