Почему java не полностью придерживается концепции монитора - PullRequest
0 голосов
/ 17 апреля 2020

Исходя из моего понимания концепции монитора, в терминологии Java монитор обладает следующими свойствами:

Монитор - это класс только с закрытыми полями.

Каждый объект этого класса имеет связанную блокировку.

Все методы заблокированы этой блокировкой.

Блокировка может иметь любое количество связанных условий.

Но java объекты отличаются от концепции монитора,

Поля не обязательно должны быть частными.

Методы не обязательно должны быть synchronized.

И при работе с ключевым словом synchronized блокировка может иметь одно ассоциированное условие.

Почему java synchronized не дает доступа к нескольким ассоциированным условиям ? И почему java не полностью соблюдает правила концепции монитора.

...