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

Что такое Volatile

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

Основные особенности:

  • Гарантирует happens-before при доступе к переменной
  • Не обеспечивает атомарность операций (например, инкремент)
  • Используется для простых флагов или состояний

Пример:

java
class Shared {
    volatile boolean running = true;
    
    void stop() {
        running = false;
    }
}

Без volatile изменения переменной running могут быть не видны другим потокам. Однако для сложных операций лучше использовать Atomic-классы или синхронизацию.

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

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

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

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