По сути, это одно и то же. Они по-разному называются мониторами , мьютексами и (в Java) примитивными блокировками , и эти термины означают почти то же самое в текущем использовании.
Основной шаблон использования, включающий мьютекс с потоками, вызывающими wait()
и notify()
, называется условие , но один и тот же мьютекс может одновременно использоваться как простая область взаимного исключения.
Фраза " contended monitor" относится к блокировке монитора / мьютекса / примитива, где существует конфликт между областью взаимного исключения. Или, проще говоря, когда один поток содержит мьютекс, а другие ожидают его получения.
Ссылки в Википедии:
(Следует заметить, что эти страницы не являются окончательными и не совсем последовательными. Но тогда большинство ИТ-специалистов играют «быстро и свободно» с терминологией, и очень мало людей читают оригинальные публикации. Но эй ... это как развивается язык.)