Sobes.tech
Junior — Middle

Какво поведение осигурява използването на ключовата дума volatile в езика за програмиране?

sobes.tech AI

Отговор от AI

Ключовата дума volatile в Java се използва за обозначаване на променлива, чиято стойност може да се променя по всяко време от различни нишки. Тя гарантира, че:

  • Четенето и писането на променливата ще се извършват директно от основната памет, а не от кеша на процесора.
  • Промените в променливата, направени от една нишка, стават незабавно видими за другите нишки.

Това помага да се избегнат проблеми с кеширането и осигурява правилна работа с променливи в многонишкови среди без използването на по-тежки механизми за синхронизация.

Пример:

volatile boolean flag = false;

// Една нишка променя flag
flag = true;

// Друга нишка вижда актуализираната стойност на flag без забавяне
if (flag) {
    // изпълнение на действия
}