Задайте функцию, чтобы вызвать после всей параллели. Завершенные фьючерсы
outputFuture = afterAll(futures,funtocall,nout)outputFuture = afterAll(futures,funtocall,nout,'PassFuture',passFuture) автоматически оценивает outputFuture = afterAll(futures,funtocall,nout)funtocall на выходных аргументах всех фьючерсов в futures, когда они все завершены, и возвращает outputFuture, чтобы содержать результат. afterAll оценивает funtocall на вертикальной конкатенации выходных аргументов всех фьючерсов. Если количество выходных аргументов элементов во фьючерсах отличается, afterAll использует минимум и игнорирует конечные выходные аргументы. afterAll вызывает выходные аргументы funtocall with nout.
Полезное приложение для afterAll должно обновить пользовательские интерфейсы, такие как графики и приложения во время параллельных вычислений с помощью parfeval. Например, можно отправить несколько вычислений рабочим, использующим parfeval, и обновить пользовательский интерфейс, когда все они закончили использовать afterAll.
ведет себя то же самое, если outputFuture = afterAll(futures,funtocall,nout,'PassFuture',passFuture)passFuture является false. Если passFuture является true, afterAll вызывает funtocall на массив фьючерсов futures а не на их выходных аргументах. Это происходит, даже если элементы futures столкнулись с ошибками.
Используйте afterAll на любых из фьючерсов, возвращенных в parfeval, parfevalOnAll, afterEach, afterAll или массив, содержащий комбинацию их. Например, используйте afterAll, чтобы автоматически вызвать больше функций на результаты другого afterEach или afterAll. Можно вызвать afterAll на фьючерсы до и после, они закончили.
Используйте cancel на будущем, возвращенном в afterAll, чтобы отменить его выполнение. Если вы вызываете afterAll на отмененное будущее, это приводит к тому же поведению, как будто будущее столкнулось с ошибкой.