Вы предполагаете, что класс является общедоступным, а не дочерним, закрытым, защищенным или защищенным пакетами. Тем не менее, мой ответ был больше, чтобы продемонстрировать связь между замком и классом.

ге Брайана Гетца «Параллелизм Java на практике» его пример блокировки Reentrant запрограммирован так:

Lock lock = new ReentrantLock();

Тем не менее, мне интересно знать, если изменить приведенный выше код на:

private static final Lock lock = new ReentrantLock();

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

Таким образом, изменится ли функциональность этого кода, если блокировка будет закрытой, статической и окончательной?

lock.lock();
try {
    //method stuff
} finally {
    lock.unlock();
}

Спасибо всем заранее. Matt

Ответы на вопрос(2)

Ваш ответ на вопрос