В книге Брайана Гетца «Параллелизм Java на практике» его пример блокировки «Reentrant» запрограммирован так:
Lock lock = new ReentrantLock();
Однако мне любопытно узнать, изменив ли код выше:
private static final Lock lock = new ReentrantLock();
заставляет блокировку теперь действовать как мьютекс или если она не нужна и избыточна.
Таким образом, изменяется ли функциональность этого кода, если блокировка сделана закрытой, статической и окончательной?
lock.lock();
try {
//method stuff
} finally {
lock.unlock();
}
Спасибо всем заранее.
Мэтт