У меня возникла следующая проблема:Отменить рекурсивную задачу с заданным результатом?
Я взаимодействую с ConcurrentHashMap с помощью RecursiveAction для деления и завоевания карты.
Проблема в том, что мне нужно вернуть первый результат, найденный по конкретным критериям, или если ничего не найдено. Мне нужно вернуть значение null, когда все «сплит-задачи» выполнены.
На данный момент (из-за того, что я использую RecursiveAction вместо RecursiveTask), я просто могу вызвать метод и выполнить «return;» когда задача обнаружила совпадение, но это плохо пахнет.
Все решения, которые я пробовал с реализацией рекурсивной задачи, должны были пройти через всю карту (все расщепления), пока я не смогу вернуть значение.
Есть ли какая-либо возможность вернуть заданный результат и отменить задачу для превентивной обработки фугии с помощью рекурсивной тары?
Это должно быть просто - просто не создавайте подзадачи? – immibis
как вы это понимаете? нет fork/join? – user2874177