Встречается на собеседованиях • сегодня

Всегда ли будет запрет параллельного чтения при чтении одной записи транзакциями из разных потоков

Нет, в Java параллельное чтение одной записи разными потоками обычно разрешено. Чтение не блокирует данные, если только не используется явная блокировка (например, SELECT ... FOR UPDATE в SQL или ReadWriteLock в Java).

Пример с ReadWriteLock:

java
ReadWriteLock lock = new ReentrantReadWriteLock();
// Разные потоки могут одновременно читать
lock.readLock().lock();
try {
    // чтение данных
} finally {
    lock.readLock().unlock();
}

Исключение: если транзакция изолирована на уровне SERIALIZABLE или используется пессимистичная блокировка, чтение может блокироваться. Но по умолчанию (например, в REPEATABLE_READ) параллельное чтение разрешено.

Sophi
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
Попробовать бесплатноArrow

Следующий вопрос

Это единственный вопрос по вашему фильтру

как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы