Задать вопрос
@have_a_questions

Чем отличаются volotile ThreadLocal и статическая переменная друг от друга?

Доброго времени суток. Подскажите пожалуйста чем друг от друга отличаются volotile ThreadLocal и статическая переменная и когда их применять ?
  • Вопрос задан
  • 289 просмотров
Подписаться 1 Оценить 2 комментария
Помогут разобраться в теме Все курсы
  • Яндекс Практикум
    Java-разработчик
    10 месяцев
    Далее
  • Skillfactory
    Профессия Java-разработчик
    14 месяцев
    Далее
  • Хекслет
    Java-разработчик
    10 месяцев
    Далее
  • Stepik
    Буткемп "Java: написание веб-сервисов для начинающих"
    1 месяц
    Далее
  • Merion Academy
    Java-разработчик с нуля
    4 месяца
    Далее
  • Skypro
    Java-разработчик с нуля
    9 месяцев
    Далее
  • Нетология
    Java-разработчик с нуля
    12 месяцев
    Далее
  • ProductStar
    Java-разработчик
    10 месяцев
    Далее
Решения вопроса 1
@Zhyki
Ничерта не понимаю
volatile позволяет разным потокам видеть "актуальное" значение переменной,потому что любые изменения сразу же записываются в память, в то время как если не объявлять переменную с этим ключевым словом - её значение может сохраняться в кеше.
Статическая переменная - переменная, которая инициализируется при первом вызове класса и значение её одинаково для всех экземпляров класса.
Когда применять те или иные ?
Ну первую ,что очевидно,при работе с примитивными типами из нескольких потоков (к примеру 2 потока обращаются к переменной-счетчику)
а static же ...Ну тут много разных вариантов
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы