Junior — Middle
Какво поведение осигурява използването на ключовата дума volatile в езика за програмиране?
sobes.tech AI
Отговор от AI
Ключовата дума volatile в Java се използва за обозначаване на променлива, чиято стойност може да се променя по всяко време от различни нишки. Тя гарантира, че:
- Четенето и писането на променливата ще се извършват директно от основната памет, а не от кеша на процесора.
- Промените в променливата, направени от една нишка, стават незабавно видими за другите нишки.
Това помага да се избегнат проблеми с кеширането и осигурява правилна работа с променливи в многонишкови среди без използването на по-тежки механизми за синхронизация.
Пример:
volatile boolean flag = false;
// Една нишка променя flag
flag = true;
// Друга нишка вижда актуализираната стойност на flag без забавяне
if (flag) {
// изпълнение на действия
}