Встречается на собеседованиях • сегодня
Как блокировать вызов на сервере
Для блокировки вызова на сервере в Java можно использовать механизмы синхронизации, например, synchronized или ReentrantLock.
Пример с synchronized:
java
public class Server {
private final Object lock = new Object();
public void processRequest() {
synchronized (lock) {
// Критическая секция
System.out.println("Обработка запроса...");
}
}
}Пример с ReentrantLock:
java
import java.util.concurrent.locks.ReentrantLock;
public class Server {
private final ReentrantLock lock = new ReentrantLock();
public void processRequest() {
lock.lock();
try {
// Критическая секция
System.out.println("Обработка запроса...");
} finally {
lock.unlock();
}
}
}Выбор между ними:
synchronizedпроще, но менее гибок.ReentrantLockпозволяет более тонко управлять блокировками (например, таймауты, честность).
Для распределённых систем можно использовать Redisson или ZooKeeper.

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