Ако изпратя някои задачи на Executor
с помощта на invokeAll
, гарантирам ли ми, че изпратената нишка вижда всички странични ефекти от изпълнението на задачата, дори ако не извикам get()
на всяко от върнатите Future
s?
От практическа гледна точка изглежда, че това би било полезна гаранция, но не виждам нищо в javadoc.
По-точно, всички действия в тялото на Callable
, изпратено до изпълнител, се случват-преди връщането от invokeAll()
извикването?
Досадно е да се извиква безполезно get()
за всеки фючърс, когато всъщност типът връщане е Void
и не се хвърлят изключения - цялата работа в се случва като странични ефекти.