Есть три класса: A, B, С. В классе B есть ArrayList и определены Getter и Setter. Класс A каждую минуту добавляет через setter элементы в список. Класс С каждые две минуты получает через getter элементы списка и очищает список. Вопрос: как синхронизировать список в классе B, чтобы классы друг-другу не мешали и в случае если они встретились, то один уступил другому? Решает ли проблему установка syncronized на getter и setter? Или надо синхронизировать что-то другое?