В чём основная проблема выбранной структуры решения - ArrayList без предварительной ёмкости приводит к перерасходам - Риск взаимной блокировки при помощи методов - Неэффективная структура блокировок приводит к излишним накладным расходам. - ExecutorService не может корректно обрабатываться - Фиксированный пул защиты масштабируемости