Встречается на собеседованиях • сегодня
У каждого ли экземпляра есть свой mutex
Нет, не у каждого экземпляра есть свой мьютекс по умолчанию. Мьютекс — это отдельный объект (например, ReentrantLock или synchronized блок), который нужно явно создавать и использовать для синхронизации.
Пример с synchronized:
java
public class Counter {
private int count = 0;
public synchronized void increment() { // Используется монитор объекта Counter
count++;
}
}Пример с ReentrantLock:
java
public class Counter {
private int count = 0;
private final Lock lock = new ReentrantLock(); // Явное создание мьютекса
public void increment() {
lock.lock();
try {
count++;
} finally {
lock.unlock();
}
}
}Монитор объекта (используемый в synchronized) есть у каждого экземпляра, но это не отдельный мьютекс, а часть JVM-реализации.

Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
офферы быстрее!
Попробовать бесплатно
Следующий вопрос
Это единственный вопрос по вашему фильтру
как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы