Поместите код в блок synchronized
с некоторым подходящим замком. Существуют и другие высокоспециализированные методы, но я бы рекомендовал избегать их, если в этом нет крайней необходимости.
Также вы использовали случай SHOUTY, который обычно указывает на static
, но метод экземпляра. Если он действительно статичен, я предлагаю вам убедиться, что он никоим образом не изменяем. Если создание статического неизменяемого просто дорого, то загрузка классов в любом случае ленива. Возможно, вы захотите переместить его в другой (возможно, вложенный) класс, чтобы отложить создание до самого последнего возможного момента.