Вокруг любого обращения к общему ресурсу должны быть блокировки.
В данном случае у вас общим ресурсом является dataStorage.
Объектом блокировки является ReadWriteLock.
Так давайте не стесняться делать readLock при чтении из dataStorage и writeLock при записи туда!