Если я отправлю некоторые задачи в Executor
с помощью invokeAll
, есть ли гарантии, что отправленный поток увидит все побочные эффекты выполнения задачи, даже если я не вызову get()
для каждого из возвращенных Future
?
С практической точки зрения, казалось бы, это была бы полезная гарантия, но я ничего не вижу в javadoc.
Точнее, все ли действия в теле Callable
, переданного исполнителю, происходят до возврата из вызова invokeAll()
?
Раздражает бесполезный вызов get()
для каждого будущего, когда на самом деле возвращаемый тип Void
и исключения не выбрасываются - вся работа в процессе происходит как побочные эффекты.