Представьте себе this
- это ключ, а синхронизированный блок - это номер в отеле. Когда вы получите ключ, комната станет вашей, и никто другой не сможет войти в нее. Когда вы отдаете ключ, кто-то еще может получить ключ снова, чтобы войти в комнату.
synchronized
само по себе ничего не возвращает. Это просто синтаксис для синхронизации потоков с помощью lock .
В нашем примере потоки будут гостями, синхронизированный блок будет гостиничным номером, а замок - ключом для комнаты. Любой объект может быть замком, а this
является объектом.