Sobes.tech
Junior — Middle

Magyarázza el, mit jelent a volatile kulcsszó a programozásban, és mire használják.

sobes.tech MI

Válasz az MI-től

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

Пример:

public class Counter {
    private volatile int count = 0;

    public void increment() {
        count++; // без дополнительной синхронизации это не атомарно, но volatile гарантирует видимость изменений
    }

    public int getCount() {
        return count;
    }
}

Важно понимать, что volatile обеспечивает только видимость изменений, но не атомарность операций.