При использовании любого из классов java.util.concurrent мне все еще нужно синхронизировать доступ к экземпляру, чтобы избежать проблем с видимостью между разностными потоками?
При использовании экземпляра java.util. одновременно, возможно ли, что один поток изменяет экземпляр (т. е. помещает элемент в параллельную хэш-карту), а последующий поток не будет видеть изменения?
Мой вопрос возникает из-за того, что модель памяти Java допускает потоки для кэширования значений вместо их извлечения непосредственно из памяти, если доступ к значению не синхронизирован.