Как настроить политику выключения API структурированного параллелизма Java 21?JAVA

Программисты JAVA общаются здесь
Ответить Пред. темаСлед. тема
Anonymous
 Как настроить политику выключения API структурированного параллелизма Java 21?

Сообщение Anonymous »

У меня есть следующий вариант использования, в котором я хочу получить информацию о нескольких состояниях ошибок для устройства из нескольких источников данных. Я хочу немедленно завершить все задачи и вернуть основной задаче статус ошибки, если какой-либо из статусов истинен. Как я могу этого добиться? Вот моя логика запроса:

Код: Выделить всё

try (var scope = new StructuredTaskScope()) {
scope.fork(()->posRepo.findInspectionByUnitId(unitId));
scope.fork(()->posRepo.findEventOfFireByUnitId(unitId));
scope.fork(()->faultRepo.findGeneralErrorByUnitId(unitId));
scope.fork(()->ardInfRepo.findArdModeByUnitId(unitId));
scope.fork(()->ardInfRepo.findArdPowerStatusByUnitId(unitId));
scope.fork(()->ardInfRepo.findArdModeByUnitId(unitId));
// Once a task return true, close all remaining tasks,and return the  signal:"true" to main task;
scope.join();
} catch (InterruptedException e) {
throw new RuntimeException(e);
}

Код: Выделить всё

public interface ElePosRepo extends CrudRepository {

Optional findInspectionByUnitId(Integer unitId);
Optional findEventOfFireByUnitId(Integer unitId);
}
Я ожидаю, что когда подзадача вернет true, все остальные подзадачи в группе задач должны быть немедленно завершены. Если все подзадачи возвращают значение false или пусты, основная задача должна возвращать значение false после завершения всех подзадач.


Подробнее здесь: https://stackoverflow.com/questions/782 ... rrency-api
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «JAVA»