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

Для чего нужен volatile

Ключевое слово volatile гарантирует видимость изменений переменной для всех потоков. Оно предотвращает кэширование переменной в регистрах процессора, обеспечивая чтение из основной памяти.

Основные случаи использования:

  1. Когда переменная используется как флаг для остановки потока
  2. В простых сценариях shared-доступа, где не нужна атомарность

Пример:

java
class Worker implements Runnable {
    private volatile boolean running = true;
    
    public void run() {
        while (running) {
            // выполнение работы
        }
    }
    
    public void stop() {
        running = false;
    }
}

Важно: volatile не заменяет синхронизацию для составных операций! Для атомарных операций используйте Atomic-классы или synchronized.

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

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

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

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