Future和之间有什么区别Promise?
它们都像未来结果的占位符,但主要区别在哪里?
我需要执行一些任务。有些任务是独立的,有些则依赖于其他任务的成功执行。独立的任务可以并行运行以获得更好的性能。我称这些任务为服务。该列link说明哪些服务将串行执行,哪些服务将并行执行。专栏order描述了一组定义的服务将遵循的执行顺序。对于下面的示例,服务 A 和 B 应该并行运行。如果它们已成功执行,则服务 C 将执行。请注意,服务 C 不直接依赖于其先前服务的输出,但它必须在成功执行其先前服务之后运行,因为服务 C 在其执行期间需要一些由其先前服务产生的数据。服务 C 成功执行后,下一个服务 D 将执行,如此循环下去,直到列表中的所有服务都被消费完。
Tasks service link order
Service A 01 03 1
Service B 02 03 2
Service C 03 04 3
Service D 04 05 4
Service E 05 07 5
Service F 06 07 6
Service G 07 (null) 7
Run Code Online (Sandbox Code Playgroud)
以下是我的代码。
public void executeTransactionFlow(DataVo dataVo) throws Exception {
List<Callable<Boolean>> threadList = new ArrayList<>();
List<String> serviceIds = new ArrayList<>();
List<Future<Boolean>> futureList;
String validatedRespCode …Run Code Online (Sandbox Code Playgroud) java multithreading reactive-programming java-8 completable-future