Обложка канала

Библиотека джависта

20804 @javaproglib

Полезные материалы по всему, что может быть полезно разработчику на Java.

Библиотека джависта

3 года назад
Открыть в
#вопросы_с_собеседований Для чего используются ключевые слова volatile, synchronized, transient, native? volatile вынуждает потоки отключить оптимизацию доступа и использовать единственный экземпляр переменной. Если переменная примитивного типа – этого будет достаточно для обеспечения потокобезопасности. Если же переменная является ссылкой на объект – синхронизировано будет исключительно значение этой ссылки. Все данные, содержащиеся в объекте, синхронизированы не будут! synchronized — это зарезервированное слово позволяет добиваться синхронизации в помеченных им методах или блоках кода. Ключевые слова transient и native к многопоточности никакого отношения не имеют, первое используется для указания полей класса, которые не нужно сериализовать, а второе сигнализирует о том, что метод реализован в платформо-зависимом коде.